* perl-native_5.10.1 fails @ 2011-03-16 20:49 Jan Paesmans 2011-03-16 22:01 ` Tom Rini 0 siblings, 1 reply; 6+ messages in thread From: Jan Paesmans @ 2011-03-16 20:49 UTC (permalink / raw) To: openembedded-devel Hi all, When trying to build an x11-image for pm9263 with angstrom-2010.x, perl-native fails to build. The error is listed below. As far as I can tell, the problem is that a gcc flag is passed to the linker, -fstack-protector. I tried to find out where this -fstack-protector could come from, but the only trace I could find was in the Configure of perl-native itself. There is no mention that it is set when Configure is called in the configure step, nor in any of the environment variables during the do_configure or do_compile step. I run Ubuntu 10.10 with gold as the linker. I thought that it might be the gold linker but neither gold nor ld seem to have this option when reviewing the man-page. Regards, Jan | Running Makefile.PL in ext/DynaLoader | ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static | Processing hints file hints/linux.pl | Unrecognized argument in LIBS ignored: '-Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' | Unrecognized argument in LIBS ignored: '-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' | Unrecognized argument in LIBS ignored: '-Wl,-O1' | Unrecognized argument in LIBS ignored: '-fstack-protector' | Writing Makefile for DynaLoader | make[1]: Entering directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' | make[1]: Leaving directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' | Making all in ext/DynaLoader | make all PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static | make[1]: Entering directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' | ../../miniperl "-I../../lib" "-I../../lib" DynaLoader_pm.PL DynaLoader.pm | ../../miniperl "-I../../lib" "-I../../lib" XSLoader_pm.PL XSLoader.pm | cp XSLoader.pm ../../lib/XSLoader.pm | cp DynaLoader.pm ../../lib/DynaLoader.pm | AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader) | rm -f DynaLoader.xs | cp dl_dlopen.xs DynaLoader.xs | ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap DynaLoader.xs > DynaLoader.xsc && mv DynaLoader.xsc DynaLoader.c | gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.10\" -DXS_VERSION=\"1.10\" -fPIC "-I../.." -DLIBC="/lib/libc-2.12.1.so" DynaLoader.c | rm -rf ../../DynaLoader.o | cp DynaLoader.o ../../DynaLoader.o | make[1]: Leaving directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' | rm -f libperl.so | ld -o libperl.so -shared -O2 -L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib -L/usr/local/lib -fstack-protector op.o perl.o gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc | ld: -fstack-protector: unknown option | ld: use the --help option for usage information | make: *** [libperl.so] Error 1 | + die 'oe_runmake failed' | + oefatal 'oe_runmake failed' | + echo FATAL: 'oe_runmake failed' | FATAL: oe_runmake failed | + exit 1 NOTE: package perl-native-5.10.1-r10: task do_compile: Failed ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: perl-native_5.10.1 fails 2011-03-16 20:49 perl-native_5.10.1 fails Jan Paesmans @ 2011-03-16 22:01 ` Tom Rini 2011-03-16 23:56 ` Jan Paesmans 0 siblings, 1 reply; 6+ messages in thread From: Tom Rini @ 2011-03-16 22:01 UTC (permalink / raw) To: openembedded-devel On 03/16/2011 01:49 PM, Jan Paesmans wrote: > Hi all, > > When trying to build an x11-image for pm9263 with angstrom-2010.x, > perl-native fails to build. > The error is listed below. As far as I can tell, the problem is that a > gcc flag is passed to the linker, -fstack-protector. I tried to find out > where this -fstack-protector could come from, but the only trace I could > find was in the Configure of perl-native itself. There is no mention > that it is set when Configure is called in the configure step, nor in > any of the environment variables during the do_configure or do_compile step. > > I run Ubuntu 10.10 with gold as the linker. I thought that it might be > the gold linker but neither gold nor ld seem to have this option when > reviewing the man-page. Can you edit the recipe and add in: EXTRA_OEMAKE = 'LD="${CCLD}"' And do a bitbake -c clean perl-native then bitbake perl-native Thanks. -- Tom Rini Mentor Graphics Corporation ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: perl-native_5.10.1 fails 2011-03-16 22:01 ` Tom Rini @ 2011-03-16 23:56 ` Jan Paesmans 2011-03-19 14:01 ` Tom Rini 0 siblings, 1 reply; 6+ messages in thread From: Jan Paesmans @ 2011-03-16 23:56 UTC (permalink / raw) To: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 4953 bytes --] On 03/16/11 23:01, Tom Rini wrote: > On 03/16/2011 01:49 PM, Jan Paesmans wrote: >> Hi all, >> >> When trying to build an x11-image for pm9263 with angstrom-2010.x, >> perl-native fails to build. >> The error is listed below. As far as I can tell, the problem is that a >> gcc flag is passed to the linker, -fstack-protector. I tried to find out >> where this -fstack-protector could come from, but the only trace I could >> find was in the Configure of perl-native itself. There is no mention >> that it is set when Configure is called in the configure step, nor in >> any of the environment variables during the do_configure or >> do_compile step. >> >> I run Ubuntu 10.10 with gold as the linker. I thought that it might be >> the gold linker but neither gold nor ld seem to have this option when >> reviewing the man-page. > > Can you edit the recipe and add in: > EXTRA_OEMAKE = 'LD="${CCLD}"' > > And do a bitbake -c clean perl-native then bitbake perl-native > Thanks. > That did the trick. Now perl-native compiles fine. However when I checked the output of the log.do_compile I did notice a change a the behaviour. I was expecting the -fstack-protector flag to be gone, instead it is still there. However, instead of invoking ld for the final link, now gcc is invoked. Below you can find the relevent section of the log file. Also in attachment is a patch with the change you suggested. Thanks for the help. Regards, Jan Running Makefile.PL in ext/DynaLoader ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl INSTALLMAN1DIR=none INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static Processing hints file hints/linux.pl Unrecognized argument in LIBS ignored: '-Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' Unrecognized argument in LIBS ignored: '-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' Unrecognized argument in LIBS ignored: '-Wl,-O1' Unrecognized argument in LIBS ignored: '-fstack-protector' Writing Makefile for DynaLoader make[1]: Entering directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' make[1]: Leaving directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' Making all in ext/DynaLoader make all PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static make[1]: Entering directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' ../../miniperl "-I../../lib" "-I../../lib" DynaLoader_pm.PL DynaLoader.pm ../../miniperl "-I../../lib" "-I../../lib" XSLoader_pm.PL XSLoader.pm cp XSLoader.pm ../../lib/XSLoader.pm cp DynaLoader.pm ../../lib/DynaLoader.pm AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader) rm -f DynaLoader.xs cp dl_dlopen.xs DynaLoader.xs ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap DynaLoader.xs > DynaLoader.xsc && mv DynaLoader.xsc DynaLoader.c gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.10\" -DXS_VERSION=\"1.10\" -fPIC "-I../.." -DLIBC="/lib/libc-2.12.1.so" DynaLoader.c rm -rf ../../DynaLoader.o cp DynaLoader.o ../../DynaLoader.o make[1]: Leaving directory `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' rm -f libperl.so gcc -o libperl.so -shared -O2 -L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib -L/usr/local/lib -fstack-protector op.o perl.o gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 gcc -o perl -L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib -Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib -Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib -Wl,-O1 -fstack-protector -L/usr/local/lib -Wl,-E -Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib/perl/5.10.1/CORE perlmain.o libperl.so `cat ext.libs` -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 ./miniperl -Ilib mkppport running /home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/miniperl -I../../lib PPPort_pm.PL [-- Attachment #2: perl-native_5.10.1.bb.patch --] [-- Type: text/plain, Size: 371 bytes --] diff --git a/recipes/perl/perl-native_5.10.1.bb b/recipes/perl/perl-native_5.10.1.bb index 5aa0c7b..586fcbd 100644 --- a/recipes/perl/perl-native_5.10.1.bb +++ b/recipes/perl/perl-native_5.10.1.bb @@ -29,6 +29,8 @@ S = "${WORKDIR}/perl-${PV}" inherit native +EXTRA_OEMAKE = 'LD="${CCLD}"' + do_configure () { ./Configure \ -Dcc="${CC}" \ ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: perl-native_5.10.1 fails 2011-03-16 23:56 ` Jan Paesmans @ 2011-03-19 14:01 ` Tom Rini 2011-03-19 18:44 ` Khem Raj 0 siblings, 1 reply; 6+ messages in thread From: Tom Rini @ 2011-03-19 14:01 UTC (permalink / raw) To: openembedded-devel On 03/16/2011 04:56 PM, Jan Paesmans wrote: > On 03/16/11 23:01, Tom Rini wrote: >> On 03/16/2011 01:49 PM, Jan Paesmans wrote: >>> Hi all, >>> >>> When trying to build an x11-image for pm9263 with angstrom-2010.x, >>> perl-native fails to build. >>> The error is listed below. As far as I can tell, the problem is that a >>> gcc flag is passed to the linker, -fstack-protector. I tried to find out >>> where this -fstack-protector could come from, but the only trace I could >>> find was in the Configure of perl-native itself. There is no mention >>> that it is set when Configure is called in the configure step, nor in >>> any of the environment variables during the do_configure or >>> do_compile step. >>> >>> I run Ubuntu 10.10 with gold as the linker. I thought that it might be >>> the gold linker but neither gold nor ld seem to have this option when >>> reviewing the man-page. >> >> Can you edit the recipe and add in: >> EXTRA_OEMAKE = 'LD="${CCLD}"' >> >> And do a bitbake -c clean perl-native then bitbake perl-native >> Thanks. >> > That did the trick. Now perl-native compiles fine. However when I > checked the output of the log.do_compile I did notice a change a the > behaviour. I was expecting the -fstack-protector flag to be gone, > instead it is still there. However, instead of invoking ld for the final > link, now gcc is invoked. Below you can find the relevent section of the > log file. Also in attachment is a patch with the change you suggested. OK, thanks. I'll put this into a patch this weekend. What's going on is that while I'm not sure where -fstack-protector is coming from (but it's a useful flag), as you saw, 'ld' chokes on it. But for linking you shouldn't really ever invoke ld directly but rather via gcc, so passing LD=${CCLD} overrides perl's makefiles and we invoke gcc as the linker and it handles the flag right in this case. > > Thanks for the help. > Regards, > > Jan > > Running Makefile.PL in ext/DynaLoader > ../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl > INSTALLMAN1DIR=none INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so > LINKTYPE=static > Processing hints file hints/linux.pl > Unrecognized argument in LIBS ignored: > '-Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' > Unrecognized argument in LIBS ignored: > '-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' > Unrecognized argument in LIBS ignored: '-Wl,-O1' > Unrecognized argument in LIBS ignored: '-fstack-protector' > Writing Makefile for DynaLoader > make[1]: Entering directory > `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > make[1]: Leaving directory > `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > Making all in ext/DynaLoader > make all PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static > make[1]: Entering directory > `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > ../../miniperl "-I../../lib" "-I../../lib" DynaLoader_pm.PL DynaLoader.pm > ../../miniperl "-I../../lib" "-I../../lib" XSLoader_pm.PL XSLoader.pm > cp XSLoader.pm ../../lib/XSLoader.pm > cp DynaLoader.pm ../../lib/DynaLoader.pm > AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader) > rm -f DynaLoader.xs > cp dl_dlopen.xs DynaLoader.xs > ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp > -noprototypes -typemap ../../lib/ExtUtils/typemap DynaLoader.xs> > DynaLoader.xsc&& mv DynaLoader.xsc DynaLoader.c > gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe > -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.10\" -DXS_VERSION=\"1.10\" > -fPIC "-I../.." -DLIBC="/lib/libc-2.12.1.so" DynaLoader.c > rm -rf ../../DynaLoader.o > cp DynaLoader.o ../../DynaLoader.o > make[1]: Leaving directory > `/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > rm -f libperl.so > gcc -o libperl.so -shared -O2 > -L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > -L/usr/local/lib -fstack-protector op.o perl.o gv.o toke.o perly.o > pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o > pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o > utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o > numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o -lnsl > -ldl -lm -lcrypt -lutil -lpthread -lc > LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 > gcc -o perl > -L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > -Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > -Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > -Wl,-O1 -fstack-protector -L/usr/local/lib -Wl,-E > -Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib/perl/5.10.1/CORE > perlmain.o libperl.so `cat ext.libs` -lnsl -ldl -lm -lcrypt -lutil > -lpthread -lc > LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 > ./miniperl -Ilib mkppport > running > /home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/miniperl > -I../../lib PPPort_pm.PL > > > > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel -- Tom Rini Mentor Graphics Corporation ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: perl-native_5.10.1 fails 2011-03-19 14:01 ` Tom Rini @ 2011-03-19 18:44 ` Khem Raj 2011-03-22 19:36 ` Jan Paesmans 0 siblings, 1 reply; 6+ messages in thread From: Khem Raj @ 2011-03-19 18:44 UTC (permalink / raw) To: openembedded-devel On (19/03/11 07:01), Tom Rini wrote: > On 03/16/2011 04:56 PM, Jan Paesmans wrote: > >On 03/16/11 23:01, Tom Rini wrote: > >>On 03/16/2011 01:49 PM, Jan Paesmans wrote: > >>>Hi all, > >>> > >>>When trying to build an x11-image for pm9263 with angstrom-2010.x, > >>>perl-native fails to build. > >>>The error is listed below. As far as I can tell, the problem is that a > >>>gcc flag is passed to the linker, -fstack-protector. I tried to find out > >>>where this -fstack-protector could come from, but the only trace I could > >>>find was in the Configure of perl-native itself. There is no mention > >>>that it is set when Configure is called in the configure step, nor in > >>>any of the environment variables during the do_configure or > >>>do_compile step. > >>> > >>>I run Ubuntu 10.10 with gold as the linker. I thought that it might be > >>>the gold linker but neither gold nor ld seem to have this option when > >>>reviewing the man-page. > >> > >>Can you edit the recipe and add in: > >>EXTRA_OEMAKE = 'LD="${CCLD}"' > >> actually when inheriting native it export LD=ld in envronment and thats whats used in makefiles You could try setting export LD=${CC} just after inherit native in the perl-native recipe I have a simialr fix lined up for oe-core > >>And do a bitbake -c clean perl-native then bitbake perl-native > >>Thanks. > >> > >That did the trick. Now perl-native compiles fine. However when I > >checked the output of the log.do_compile I did notice a change a the > >behaviour. I was expecting the -fstack-protector flag to be gone, > >instead it is still there. However, instead of invoking ld for the final > >link, now gcc is invoked. Below you can find the relevent section of the > >log file. Also in attachment is a patch with the change you suggested. > > OK, thanks. I'll put this into a patch this weekend. What's going > on is that while I'm not sure where -fstack-protector is coming from > (but it's a useful flag), as you saw, 'ld' chokes on it. But for > linking you shouldn't really ever invoke ld directly but rather via > gcc, so passing LD=${CCLD} overrides perl's makefiles and we invoke > gcc as the linker and it handles the flag right in this case. > > > > >Thanks for the help. > >Regards, > > > >Jan > > > >Running Makefile.PL in ext/DynaLoader > >../../miniperl -I../../lib Makefile.PL INSTALLDIRS=perl > >INSTALLMAN1DIR=none INSTALLMAN3DIR=none PERL_CORE=1 LIBPERL_A=libperl.so > >LINKTYPE=static > >Processing hints file hints/linux.pl > >Unrecognized argument in LIBS ignored: > >'-Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' > >Unrecognized argument in LIBS ignored: > >'-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib' > >Unrecognized argument in LIBS ignored: '-Wl,-O1' > >Unrecognized argument in LIBS ignored: '-fstack-protector' > >Writing Makefile for DynaLoader > >make[1]: Entering directory > >`/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > >make[1]: Leaving directory > >`/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > >Making all in ext/DynaLoader > > make all PERL_CORE=1 LIBPERL_A=libperl.so LINKTYPE=static > >make[1]: Entering directory > >`/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > >../../miniperl "-I../../lib" "-I../../lib" DynaLoader_pm.PL DynaLoader.pm > >../../miniperl "-I../../lib" "-I../../lib" XSLoader_pm.PL XSLoader.pm > >cp XSLoader.pm ../../lib/XSLoader.pm > >cp DynaLoader.pm ../../lib/DynaLoader.pm > >AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader) > >rm -f DynaLoader.xs > >cp dl_dlopen.xs DynaLoader.xs > >../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp > >-noprototypes -typemap ../../lib/ExtUtils/typemap DynaLoader.xs> > >DynaLoader.xsc&& mv DynaLoader.xsc DynaLoader.c > >gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe > >-fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE > >-D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.10\" -DXS_VERSION=\"1.10\" > >-fPIC "-I../.." -DLIBC="/lib/libc-2.12.1.so" DynaLoader.c > >rm -rf ../../DynaLoader.o > >cp DynaLoader.o ../../DynaLoader.o > >make[1]: Leaving directory > >`/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/ext/DynaLoader' > >rm -f libperl.so > >gcc -o libperl.so -shared -O2 > >-L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > >-L/usr/local/lib -fstack-protector op.o perl.o gv.o toke.o perly.o > >pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o > >pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o > >utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o > >numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o -lnsl > >-ldl -lm -lcrypt -lutil -lpthread -lc > >LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 > >gcc -o perl > >-L/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > >-Wl,-rpath-link,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > >-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib > >-Wl,-O1 -fstack-protector -L/usr/local/lib -Wl,-E > >-Wl,-rpath,/home/janp/src/openembedded/build/tmp/sysroots/x86_64-linux/usr/lib/perl/5.10.1/CORE > >perlmain.o libperl.so `cat ext.libs` -lnsl -ldl -lm -lcrypt -lutil > >-lpthread -lc > >LD_LIBRARY_PATH=/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1 > >./miniperl -Ilib mkppport > >running > >/home/janp/src/openembedded/build/tmp/work/x86_64-linux/perl-native-5.10.1-r10/perl-5.10.1/miniperl > >-I../../lib PPPort_pm.PL > > > > > > > > > >_______________________________________________ > >Openembedded-devel mailing list > >Openembedded-devel@lists.openembedded.org > >http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > -- > Tom Rini > Mentor Graphics Corporation > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel -- -Khem ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: perl-native_5.10.1 fails 2011-03-19 18:44 ` Khem Raj @ 2011-03-22 19:36 ` Jan Paesmans 0 siblings, 0 replies; 6+ messages in thread From: Jan Paesmans @ 2011-03-22 19:36 UTC (permalink / raw) To: openembedded-devel On 03/19/11 19:44, Khem Raj wrote: > On (19/03/11 07:01), Tom Rini wrote: >> On 03/16/2011 04:56 PM, Jan Paesmans wrote: >>> On 03/16/11 23:01, Tom Rini wrote: >>>> On 03/16/2011 01:49 PM, Jan Paesmans wrote: >>>>> Hi all, >>>>> >>>>> When trying to build an x11-image for pm9263 with >>>>> angstrom-2010.x, perl-native fails to build. The error is >>>>> listed below. As far as I can tell, the problem is that a gcc >>>>> flag is passed to the linker, -fstack-protector. I tried to >>>>> find out where this -fstack-protector could come from, but >>>>> the only trace I could find was in the Configure of >>>>> perl-native itself. There is no mention that it is set when >>>>> Configure is called in the configure step, nor in any of the >>>>> environment variables during the do_configure or do_compile >>>>> step. >>>>> >>>>> I run Ubuntu 10.10 with gold as the linker. I thought that it >>>>> might be the gold linker but neither gold nor ld seem to have >>>>> this option when reviewing the man-page. >>>> >>>> Can you edit the recipe and add in: EXTRA_OEMAKE = >>>> 'LD="${CCLD}"' >>>> > > actually when inheriting native it export LD=ld in envronment and > thats whats used in makefiles > > You could try setting > > export LD=${CC} just after inherit native in the perl-native recipe > > I have a simialr fix lined up for oe-core sorry for the late reply. Khem's solution also seems to work. I did a 'bitbake -c clean perl-native && bitbake perl-native' with the other suggestion and that succeeded. However the EXTRA_OEMAKE seems cleaner. Regards, Jan >>>> And do a bitbake -c clean perl-native then bitbake perl-native >>>> Thanks. >>>> >>> That did the trick. Now perl-native compiles fine. However when >>> I checked the output of the log.do_compile I did notice a change >>> a the behaviour. I was expecting the -fstack-protector flag to be >>> gone, instead it is still there. However, instead of invoking ld >>> for the final link, now gcc is invoked. Below you can find the >>> relevent section of the log file. Also in attachment is a patch >>> with the change you suggested. >> >> OK, thanks. I'll put this into a patch this weekend. What's >> going on is that while I'm not sure where -fstack-protector is >> coming from (but it's a useful flag), as you saw, 'ld' chokes on >> it. But for linking you shouldn't really ever invoke ld directly >> but rather via gcc, so passing LD=${CCLD} overrides perl's >> makefiles and we invoke gcc as the linker and it handles the flag >> right in this case. >> >>> >>> Thanks for the help. Regards, >>> >>> Jan ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-03-22 19:38 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-03-16 20:49 perl-native_5.10.1 fails Jan Paesmans 2011-03-16 22:01 ` Tom Rini 2011-03-16 23:56 ` Jan Paesmans 2011-03-19 14:01 ` Tom Rini 2011-03-19 18:44 ` Khem Raj 2011-03-22 19:36 ` Jan Paesmans
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.