Posted on 2012-01-19 08:58:33.537538-08 by andrepietsch
Compilation Error
Hi,

I tried to compile perl on my linux machine with arm.

I get the following error in 5.14.2:
Creating Makefile.PL in dist/threads-shared for threads::shared Running Makefile.PL in dist/threads-shared ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none PER +L_CORE=1 LIBPERL _A=libperl.a LINKTYPE=dynamic Processing hints file hints/linux.pl Writing Makefile for threads::shared Writing MYMETA.yml make[1]: Entering directory `/mnt/array1/tmp/perl/perl-5.14.1/dist/threads-shared' make[1]: Leaving directory `/mnt/array1/tmp/perl/perl-5.14.1/dist/threads-shared' Making all in dist/threads-shared make all PERL_CORE=1 LIBPERL_A=libperl.a LINKTYPE=dynamic make[1]: Entering directory `/mnt/array1/tmp/perl/perl-5.14.1/dist/threads-shared' cp lib/threads/shared.pm ../../lib/threads/shared.pm ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -typemap ../../lib/ExtUtils/t +ypemap shared.x s > shared.xsc && mv shared.xsc shared.c gcc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe -fstack-protecto +r -D_LARGEFILE_S OURCE -D_FILE_OFFSET_BITS=64 -O2 -DVER +SION=\"1.37\" -DXS_VERSION=\"1.37\" -fPIC "-I../.." shared.c Running Mkbootstrap for threads::shared () chmod 644 shared.bs rm -f ../../lib/auto/threads/shared/shared.so gcc -shared -O2 -L/opt/lib -L/lib -L/usr/lib -fstack-protector shared.o -o ../../lib/auto/threads +/shared/shared.s o \ -lpthread \ chmod 755 ../../lib/auto/threads/shared/shared.so cp shared.bs ../../lib/auto/threads/shared/shared.bs chmod 644 ../../lib/auto/threads/shared/shared.bs make[1]: Leaving directory `/mnt/array1/tmp/perl/perl-5.14.1/dist/threads-shared' ./perl -f -Ilib pod/buildtoc --build-toc -q make: *** [pod/perltoc.pod] Segmentation fault


and the following error in 5.12.4

Running Makefile.PL in dist/threads-shared ../../miniperl Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none PERL_CORE=1 LIB +PERL_A=libperl.a LINKTYPE=dynamic Processing hints file hints/linux.pl Writing Makefile for threads::shared make[1]: Entering directory `/mnt/array1/tmp/perl/perl-5.12.4/dist/threads-shared' make[1]: Leaving directory `/mnt/array1/tmp/perl/perl-5.12.4/dist/threads-shared' Making all in dist/threads-shared make all PERL_CORE=1 LIBPERL_A=libperl.a LINKTYPE=dynamic make[1]: Entering directory `/mnt/array1/tmp/perl/perl-5.12.4/dist/threads-shared' cp shared.pm ../../lib/threads/shared.pm ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -typemap ../../lib/ExtUtils/t +ypemap shared.xs > shared.xsc && mv shared.xsc shared.c gcc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe -fstack-protecto +r -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.32\" -DXS_VERSION=\"1.32\" -fPIC +"-I../.." shared.c Running Mkbootstrap for threads::shared () chmod 644 shared.bs rm -f ../../lib/auto/threads/shared/shared.so gcc -shared -O2 -L/opt/lib -L/lib -L/usr/lib -fstack-protector shared.o -o ../../lib/auto/threads +/shared/shared.so \ -lpthread \ chmod 755 ../../lib/auto/threads/shared/shared.so cp shared.bs ../../lib/auto/threads/shared/shared.bs chmod 644 ../../lib/auto/threads/shared/shared.bs make[1]: Leaving directory `/mnt/array1/tmp/perl/perl-5.12.4/dist/threads-shared' ./perl -f -Ilib pod/buildtoc --build-toc -q *** stack smashing detected ***: ./perl terminated make: *** [pod/perltoc.pod] Aborted

What could be the reason for that?

Both times I use Configure with the following parameters:

./Configure -Dusethreads -Dprefix=/opt -Dcc=gcc -Dd_dlopen

and use the following libraries for compilation:

-lgdbm -lcrypt -lm -ldl -lpthread

Any hint would be appreciated.

Kind regards


Andre
Direct Responses: 13608 | Write a response
Perl Weekly newsletter
A free weekly newsletter for people who are busy to read all the blogs. click here to check it out.