arsv / perl-cross

configure and cross-compile perl
Other
81 stars 29 forks source link

Failure to build since 1.1.8 #64

Open heirecka opened 6 years ago

heirecka commented 6 years ago

Doesn't matter if I try to build with perl-5.26.1 or 5.26.2 I get the following error, while it worked with 1.1.7

x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o op.o op.c
patch -p1 -i cnf/diffs/perl5-5.26.2/configpm.patch && touch cnf/diffs/perl5-5.26.2/configpm.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/findext.patch && touch cnf/diffs/perl5-5.26.2/findext.applied
File configpm is read-only; trying to patch anyway
patching file configpm
File win32/FindExt.pm is read-only; trying to patch anyway
patching file win32/FindExt.pm
patch -p1 -i cnf/diffs/perl5-5.26.2/customized.patch && touch cnf/diffs/perl5-5.26.2/customized.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/constant.patch && touch cnf/diffs/perl5-5.26.2/constant.applied
File t/porting/customized.dat is read-only; trying to patch anyway
patching file t/porting/customized.dat
File cpan/ExtUtils-Constant/t/Constant.t is read-only; trying to patch anyway
patching file cpan/ExtUtils-Constant/t/Constant.t
patch -p1 -i cnf/diffs/perl5-5.26.2/installscripts.patch && touch cnf/diffs/perl5-5.26.2/installscripts.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/posix-makefile.patch && touch cnf/diffs/perl5-5.26.2/posix-makefile.applied
File installman is read-only; trying to patch anyway
patching file installman
File installperl is read-only; trying to patch anyway
patching file installperl
File ext/POSIX/Makefile.PL is read-only; trying to patch anyway
patching file ext/POSIX/Makefile.PL
patch -p1 -i cnf/diffs/perl5-5.26.2/makemaker.patch && touch cnf/diffs/perl5-5.26.2/makemaker.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/dynaloader.patch && touch cnf/diffs/perl5-5.26.2/dynaloader.applied
File cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm is read-only; trying to patch anyway
patching file cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
File ext/DynaLoader/hints/linux.pl is read-only; trying to patch anyway
patching file ext/DynaLoader/hints/linux.pl
patch -p1 -i cnf/diffs/perl5-5.26.2/liblist.patch && touch cnf/diffs/perl5-5.26.2/liblist.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/test-checkcase.patch && touch cnf/diffs/perl5-5.26.2/test-checkcase.applied
File cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm is read-only; trying to patch anyway
patching file cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
File t/porting/checkcase.t is read-only; trying to patch anyway
patching file t/porting/checkcase.t
patch -p1 -i cnf/diffs/perl5-5.26.2/xconfig.patch && touch cnf/diffs/perl5-5.26.2/xconfig.applied
patch -p1 -i cnf/diffs/perl5-5.26.2/test-commonsense.patch && touch cnf/diffs/perl5-5.26.2/test-commonsense.applied
File perl.h is read-only; trying to patch anyway
File t/lib/commonsense.t is read-only; trying to patch anyway
patching file t/lib/commonsense.t
patching file perl.h
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o av.o av.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o scope.o scope.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o doop.o doop.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o doio.o doio.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o dump.o dump.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o gv.o gv.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o hv.o hv.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o mg.o mg.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o reentr.o reentr.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o mro_core.o mro_core.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o perly.o perly.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp.o pp.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp_hot.o pp_hot.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp_ctl.o pp_ctl.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp_sys.o pp_sys.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o regcomp.o regcomp.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o regexec.o regexec.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o utf8.o utf8.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o sv.o sv.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o taint.o taint.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o toke.o toke.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o util.o util.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o deb.o deb.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o run.o run.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o universal.o universal.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pad.o pad.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -o generate_uudmap generate_uudmap.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o keywords.o keywords.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o perlio.o perlio.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o perlapi.o perlapi.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o numeric.o numeric.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o mathoms.o mathoms.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o locale.o locale.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp_pack.o pp_pack.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o pp_sort.o pp_sort.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o caretx.o caretx.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o dquote.o dquote.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o time64.o time64.c
cp -f op.c opmini.c
cp -f perl.c perlmini.c
./generate_uudmap uudmap.h bitcount.h mg_data.h
./generate_uudmap uudmap.h bitcount.h mg_data.h
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o miniperlmain.o miniperlmain.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o globals.o globals.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -DPERL_EXTERNAL_GLOB -c -o opmini.o opmini.c
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -DPERL_IS_MINIPERL -c -o perlmini.o perlmini.c
cp -f ext/re/re.pm lib/re.pm
sh cflags.SH
cflags.SH: Adding -std=c89.
cp -f dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp lib/ExtUtils/xsubpp
ln -sf libperl.so.5.26.0 libperl.so.5.26
cflags.SH: Adding -Werror=declaration-after-statement.
cflags.SH: Adding -Wextra.
cflags.SH: Adding -Wc++-compat.
cflags.SH: Adding -Wwrite-strings.
cflags.SH: cc       = x86_64-pc-linux-gnu-cc
cflags.SH: ccflags  = -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
cflags.SH: stdflags =  -std=c89
cflags.SH: optimize = -fwrapv -fno-strict-aliasing
cflags.SH: warn     =  -Wall -Werror=declaration-after-statement -Wextra -Wc++-compat -Wwrite-strings
Extracting cflags (with variable substitutions)
x86_64-pc-linux-gnu-cc -Wl,-O1 -Wl,--as-needed -o miniperl miniperlmain.o av.o scope.o doop.o doio.o dump.o gv.o hv.o mg.o reentr.o mro_core.o perly.o pp.o pp_hot.o pp_ctl.o pp_sys.o regcomp.o regexec.o utf8.o sv.o taint.o toke.o util.o deb.o run.o universal.o pad.o globals.o keywords.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o caretx.o dquote.o time64.o opmini.o perlmini.o -lm -lcrypt -lpthread -ldl
./miniperl_top make_patchnum.pl
./miniperl_top make_patchnum.pl
cd dist/lib/ && ../../miniperl_top -I../../lib Makefile.PL \
 PERL_CORE=1 LIBPERL_A=libperl.so.5.26.0 PERL="../../miniperl_top"
Updating 'git_version.h' and 'lib/Config_git.pl'
Updating 'git_version.h' and 'lib/Config_git.pl'
x86_64-pc-linux-gnu-cc -DPERL_CORE -pipe -O2 -march=native -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fwrapv -fno-strict-aliasing -fPIC -Wno-unused-function -c -o perl.o perl.c
./miniperl_top configpm
Can't locate Config.pm in @INC (you may need to install the Config module) (@INC contains: /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cnf/stub /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cnf/cpan /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/AutoLoader/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/Exporter/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/Cwd /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/Cwd/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-Command/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-Install/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-MakeMaker/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/ExtUtils-MakeMaker/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-Manifest/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/File-Path/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/ext/File-Find/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/ext/re /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-Constant/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/ExtUtils-ParseXS/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/constant/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/Getopt-Long/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/Text-Tabs/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/Carp/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/podlators/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/parent/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/version/lib /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/dist/Pod-Simple/lib ../../lib .) at /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm line 8.
BEGIN failed--compilation aborted at /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm line 8.
Compilation failed in require at /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm line 9.
BEGIN failed--compilation aborted at /var/tmp/paludis/build/dev-lang-perl-5.26.2/work/perl-5.26.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm line 9.
Compilation failed in require at Makefile.PL line 7.
BEGIN failed--compilation aborted at Makefile.PL line 7.
make: *** [Makefile:241: dist/lib/Makefile] Error 2
make: *** Waiting for unfinished jobs....
written lib/Config.pod
updated lib/Config.pm
updated lib/Config_heavy.pl
arsv commented 6 years ago

I think I see the problem. Quick workaround: try building it sequentially, without -jN for make.

heirecka commented 6 years ago

Yes, that works.

arsv commented 6 years ago

Proper fix: https://github.com/arsv/perl-cross/commit/47eeffe6fcd8f3b73c743ff868627d2d8e3a752b

I'm planning to tag the next version once perl-5.28.0 is released, so hopefully in less than a month. Until then, I guess it's either sequential builds, or maybe try forcing build order: make -jN miniperl lib/Config.pm; make -jN.