Am 27.04.2017 um 16:55 schrieb Eli Zaretskii:
The configure script concludes that Perl extension XS cannot be built:
no fallback module for TestXS at ../../../Texinfo/XSLoader.pm line 241.
BEGIN failed--compilation aborted at
../../../Texinfo/Convert/XSParagraph/TestXS.pm line 31.
Compilation failed in require at
../../../Texinfo/Convert/XSParagraph/fail.pl line 1.
checking whether we can build Perl extension (XS) modules... no
I cannote figure out why it reaches this conclusion: the TestXS module
is built successfully. How can I find out why the detection fails?
I ran into that at first, too. In short:
pacman mingw-w64-{i686,x86_64}-perl
fixed it for me.
The crucial output appears on the terminal only, with nothing useful in
config.log. It's a missing <sys/wait.h> which the perl5 CORE/perl.h is
trying to access in the test compile performed by configure (log excerpt
attached), lead by CORE/config.h which claims it should be available.
But there is not <sys/wait.h> among Min's headers --- there's one in
MSys2. That pointed me to the solution: you need to have _MinGW_
edition(s) of Perl installed, not just MSys2's own one, to build the XS
stuff.
checking whether we can build Perl extension (XS) modules...
Making clean in lib
make[1]: Entering directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib'
make[2]: Entering directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib'
test -z "" || rm -f
rm -rf .libs _libs
test -z "" || rm -f
test -z "libgnu.la" || rm -f libgnu.la
rm -f ./so_locations
rm -f *.o
test -z "core *.stackdump alloca.h alloca.h-t errno.h errno.h-t float.h
float.h-t limits.h limits.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h
stdio.h-t string.h string.h-t sys/types.h sys/types.h-t wchar.h wchar.h-t" ||
rm -f core *.stackdump alloca.h alloca.h-t errno.h errno.h-t float.h float.h-t
limits.h limits.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h stdio.h-t
string.h string.h-t sys/types.h sys/types.h-t wchar.h wchar.h-t
rm -f *.lo
make[2]: Leaving directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib'
make[1]: Leaving directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib'
make[1]: Entering directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph'
test -z "TestXS.c XSParagraph.c" || rm -f TestXS.c XSParagraph.c
rm -rf .libs _libs
test -z "XSParagraph.la TestXS.la" || rm -f XSParagraph.la TestXS.la
rm -f ./so_locations
rm -f *.o
rm -f *.lo
make[1]: Leaving directory
'/home/hbbro/prgbld/w64/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph'
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib -I./lib
-DPERL_USE_SAFE_PUTENV -D_GNU_SOURCE -U__STRICT_ANSI__ -march=x86-64
-mtune=generic -O2 -pipe -fwrapv -fno-strict-aliasing -fstack-protector-strong
-DVERSION=\"0\" -DXS_VERSION=\"0\" "-I/usr/lib/perl5/core_perl/CORE" -MT
TestXS_la-TestXS.lo -MD -MP -MF .deps/TestXS_la-TestXS.Tpo -c -o
TestXS_la-TestXS.lo `test -f 'TestXS.c' || echo
'/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/'`TestXS.c
libtool: compile: gcc -DHAVE_CONFIG_H -I.
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph
-I/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/lib -I./lib
-DPERL_USE_SAFE_PUTENV -D_GNU_SOURCE -U__STRICT_ANSI__ -march=x86-64
-mtune=generic -O2 -pipe -fwrapv -fno-strict-aliasing -fstack-protector-strong
-DVERSION=\"0\" -DXS_VERSION=\"0\" -I/usr/lib/perl5/core_perl/CORE -MT
TestXS_la-TestXS.lo -MD -MP -MF .deps/TestXS_la-TestXS.Tpo -c
/c/prg/gnu/texinfo/texinfo-6.3.90/tp/Texinfo/Convert/XSParagraph/TestXS.c
-DDLL_EXPORT -DPIC -o .libs/TestXS_la-TestXS.o
In file included from TestXS.xs:5:0:
C:/msys64/usr/lib/perl5/core_perl/CORE/perl.h:809:25: fatal error: sys/wait.h:
No such file or directory
# include <sys/wait.h>
^
compilation terminated.
make: *** [Makefile:963: TestXS_la-TestXS.lo] Error 1
checking whether we can build Perl extension (XS) modules... no