Subject: | Test::Catch fails to build against perl-5.31.0 on FreeBSD-12 |
As part of testing the CPAN-River-3000, today I attempted to install CPP::panda::lib against perl-5.31.0 on FreeBSD-12, using cpanm as the installer. This attempt failed during 'perl Makefile.PL' with this message:
#####
[XS::Install] binary dependency 'Test::Catch' must be installed to proceed
#####
I then tried to install Test::Catch against the same perl. That failed as well, during 'make'. Excerpt from cpanm build.log:
#####
Configuring Test-Catch-v1.0.6
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Test::Catch
Writing MYMETA.yml and MYMETA.json
Generating a Unix-style Makefile.test
Writing Makefile.test for MyTest
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have XS::Install v1.2.3 ... Yes (1.2.3)
Checking if you have Test::More 1.302015 ... Yes (1.302164)
Checking if you have Test::Deep 0 ... Yes (1.128)
Checking if you have Test::Simple 0.96 ... Yes (1.302164)
Checking if you have CPP::catch v1.0.8 ... Yes (1.0.8)
Building and testing Test-Catch-v1.0.6
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
"/usr/home/jkeenan/testing/blead/bin/perl" -MXS::Install::Util -e 'XS::Install::Util::cmd_check_dependencies()' .o Catch.xs.cc -xs Catch.xs
cp blib/info blib/arch/Test/Catch.x/info
cp lib/Test/Catch.pod blib/arch/Test/Catch.pod
cp lib/Test/Catch.pm blib/arch/Test/Catch.pm
Running Mkbootstrap for Catch ()
chmod 644 "Catch.bs"
"/usr/home/jkeenan/testing/blead/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Catch.bs blib/arch/auto/Test/Catch/Catch.bs 644
"/usr/home/jkeenan/testing/blead/bin/perl" -Ilib -MXS::Install::ParseXS "/home/jkeenan/testing/blead/lib/perl5/5.31.2/ExtUtils/xsubpp" -hiertype -C++ -typemap '/home/jkeenan/testing/blead/lib/perl5/5.31.2/ExtUtils/typemap' -typemap '/usr/home/jkeenan/testing/blead/lib/perl5/site_perl/5.31.2/XS/Install.x/tm/typemap' -csuffix .xs.cc Catch.xs > Catch.xsc
mv Catch.xsc Catch.xs.cc
c++ -c -I/usr/home/jkeenan/testing/blead/lib/perl5/site_perl/5.31.2/CPP/catch.x/i -I/usr/home/jkeenan/testing/blead/lib/perl5/site_perl/5.31.2/XS/Install.x/i -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -Wall -Wextra -std=c++11 -o Catch.xs.o -pipe -fstack-protector -fno-strict-aliasing -O0 -g0 -DVERSION=\"1.0.6\" -DXS_VERSION=\"1.0.6\" -DPIC -fPIC "-I/home/jkeenan/testing/blead/lib/perl5/5.31.2/amd64-freebsd-thread-multi/CORE" Catch.xs.cc
Catch.xs.cc:514:1: warning: duplicate 'extern' declaration specifier [-Wduplicate-decl-specifier]
XS_EXTERNAL(boot_Test__Catch)
^
/home/jkeenan/testing/blead/lib/perl5/5.31.2/amd64-freebsd-thread-multi/CORE/XSUB.h:134:29: note: expanded from macro 'XS_EXTERNAL'
# define XS_EXTERNAL(name) extern "C" XSPROTO(name)
^
1 warning generated.
rm -f blib/arch/auto/Test/Catch/Catch.so
c++ -shared -L/usr/local/lib -fstack-protector-strong Catch.xs.o -o blib/arch/auto/Test/Catch/Catch.so
chmod 755 blib/arch/auto/Test/Catch/Catch.so
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
make: Unknown modifier ':'
"/usr/home/jkeenan/testing/blead/bin/perl" -MXS::Install::Util -e 'XS::Install::Util::cmd_check_dependencies()' .o Catch.xs.cc -xs Catch.xs
"/usr/home/jkeenan/testing/blead/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Catch.bs blib/arch/auto/Test/Catch/Catch.bs 644
usage: make [-BeikNnqrstWwX]
[-C directory] [-D variable] [-d flags] [-f makefile]
[-I directory] [-J private] [-j max_jobs] [-m directory] [-T file]
[-V variable] [-v variable] [variable=value] [target ...]
*** Error code 2
Stop.
make: stopped in /usr/home/jkeenan/.cpanm/work/1562971350.1101/Test-Catch-1.0.6
#####
Can you investigate?
Thank you very much.
Jim Keenan