cperl
cperl copied to clipboard
Infinite loop during make when configuring with -Dextras
I try to install a cperl for running Biber with these required CPAN packages as extras: https://github.com/plk/biber/blob/dev/Build.PL#L44
The full repro script is below this repeated part of the make log. Make step doesn't stop and keeps printing the following:
---- Unsatisfied dependencies detected during ----
---- RCLAMP/File-Find-Rule-0.34.tar.gz ----
Number::Compare [requires]
Text::Glob [requires]
Running make for module 'Number::Compare'
RCLAMP/Number-Compare-0.03.tar.gz
Has already been unwrapped into directory /home/vadimkantorov/.cpan/build/Number-Compare-0.03-0
RCLAMP/Number-Compare-0.03.tar.gz
Has already been prepared
RCLAMP/Number-Compare-0.03.tar.gz
Has already been made
Running make for module 'Text::Glob'
RCLAMP/Text-Glob-0.11.tar.gz
Has already been unwrapped into directory /home/vadimkantorov/.cpan/build/Text-Glob-0.11-0
RCLAMP/Text-Glob-0.11.tar.gz
Has already been prepared
RCLAMP/Text-Glob-0.11.tar.gz
Has already been made
RCLAMP/File-Find-Rule-0.34.tar.gz
Has already been unwrapped into directory /home/vadimkantorov/.cpan/build/File-Find-Rule-0.34-0
RCLAMP/File-Find-Rule-0.34.tar.gz
Has already been prepared
Running make for R/RC/RCLAMP/File-Find-Rule-0.34.tar.gz
---- Unsatisfied dependencies detected during ----
---- RCLAMP/File-Find-Rule-0.34.tar.gz ----
...
Has already been made
...
^CMakefile:563: recipe for target 'extras.make' failed
make: [extras.make] Interrupt (ignored)
PERL=https://github.com/perl11/cperl/archive/2506c06030b8dfeb548757e92c558a01fcd53c9b.tar.gz
wget -nc $PERL
mkdir -p cperl
tar -xf $(basename $PERL) --strip-components=1 --directory=cperl
rm -rf cperl-5.30.0
cp -r cperl cperl-5.30.0
PREFIX=$PWD/cperlprefix
mkdir -p $PREFIX
cd cperl-5.30.0
bash +x ./Configure -sde -Dprefix=$PREFIX -Dextras="autovivification Class::Accessor Data::Dump Data::Compare Data::Uniqid DateTime::Format::Builder DateTime::Calendar::Julian File::Slurper IPC::Cmd IPC::Run3 List::AllUtils List::MoreUtils List::MoreUtils::XS Mozilla::CA Regexp::Common Log::Log4perl Unicode::Collate Unicode::Normalize Unicode::LineBreak Unicode::GCString Encode::Locale Encode::EUCJPASCII Encode::JIS2K Encode::HanExtra Parse::RecDescent PerlIO::utf8_strict XML::LibXML XML::LibXML::Simple XML::LibXSLT XML::Writer Sort::Key Storable Text::CSV Text::CSV_XS Text::Roman IO::String URI Text::BibTeX LWP::UserAgent LWP::Protocol::https Business::ISBN Business::ISSN Business::ISMN Lingua::Translit"
bash +x Makefile.SH
make -j8
make -j8 install
Using ./cperlprefix/bin/cpan Data::Compare autovivification Class::Accessor Data::Dump Data::Uniqid DateTime::Format::Builder DateTime::Calendar::Julian File::Slurper IPC::Cmd IPC::Run3 List::AllUtils List::MoreUtils List::MoreUtils::XS Mozilla::CA Regexp::Common Log::Log4perl Unicode::Collate Unicode::Normalize Unicode::LineBreak Unicode::GCString Encode::Locale Encode::EUCJPASCII Encode::JIS2K Encode::HanExtra Parse::RecDescent PerlIO::utf8_strict XML::LibXML XML::LibXML::Simple XML::LibXSLT XML::Writer Sort::Key Storable Text::CSV Text::CSV_XS Text::Roman IO::String URI Text::BibTeX LWP::UserAgent LWP::Protocol::https Business::ISBN Business::ISSN Business::ISMN Lingua::Translit takes about one hour to complete :(
That's why I automated the cpan updates long time ago. It needs several hours for all the different versions, asan, debugging, threads, ... but it can run in parallel.
It seems that it still fails on WSLv1 :( Many tests fail. And even after this command, DateTime import fails.
But still, there seems a bug in EXTRAS handling