[OE-core] perl build failure

Phil Blundell pb at pbcl.net
Tue May 24 12:32:29 UTC 2011


My eglibc builds are failing in perl with:

| ccache i586-oe-linux-gcc -march=i586 --sysroot=/home/pb/oe/build-meta/tmp-eglibc/sysroots/qemux86 -Wl,-O1  -Wl,--as-needed -o miniperl \
| 	      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 globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o   \
| 	    miniperlmain.o opmini.o perlmini.o -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
| toke.o: In function `S_scan_str':
| /home/pb/oe/build-meta/tmp-eglibc/work/i586-oe-linux/perl-5.12.3-r0/perl-5.12.3/toke.c:12609: undefined reference to `__stack_chk_guard'

What seems to be happening is that perl is adding -fstack-protector to
CFLAGS but then somehow forgetting to include it during final link of
miniperl.

I see that -fstack-protector is being forced off altogether for uclibc
builds which presumably is why the problem doesn't occur there.  But I
am somewhat baffled as to why this is apparently not happening for
anybody else with eglibc.

Anyway, does anybody have an idea what is going wrong here?  I had a
quick look at it but the perl cross-compilation process seems to be
slightly baroque and I couldn't immediately figure out how the various
makefiles and config fragments were meant to be interacting.

p.






More information about the Openembedded-core mailing list