Fiasco / L4Re compilation issues

Adam Lackorzynski adam at os.inf.tu-dresden.de
Sun Oct 31 23:02:13 CET 2010


On Sun Oct 31, 2010 at 14:48:51 -0700, Thomas DuBuisson wrote:
> > I'm mainly using the codesourcery ones nowadays (4.4). Nevertheless,
> > does it help if you remove the abi=apcs-gnu line in src/Makeconf.arm?
> 
> That causes it to fail just as early with a different message.  I'll
> try with 4.4 and get back to the list on results, thanks.

Ok, thanks.
 
> >> 3) Failure to build L4Re due to linker error
> >>
> >> The symbol "__stack_chk_fail_local" is missing when building
> >> "libl4util.so" (see below).  A quick objdump/grep doesn't show this
> >> symbol in any object file in the build directory - is the build system
> >> slightly broken?  I see the source definition but don't really want to
> >> hack around in the build system.
> >>
> >> $ ld --version
> >> GNU ld version 2.20.51.0.2-20.fc13 20091009
> >>
> >> -------------
> >> make[5]: Entering directory
> >> `/home/tommd/dev/L4/L4Re/build/pkg/l4util/lib/src/OBJ-x86_core2-l4f'
> >>   ==> Linking to shared libl4util.so
> >> /usr/lib/gcc/i686-redhat-linux/4.4.4/libgcc_eh.a(unwind-dw2.o): In
> >> function `.L107':
> >> (.text+0xb79): undefined reference to `__stack_chk_fail_local'
> >> /usr/lib/gcc/i686-redhat-linux/4.4.4/libgcc_eh.a(unwind-dw2.o): In
> >> function `.L358':
> >
> > Could you do a 'make clean' and 'make V=1' and check whether a
> > '-fno-stack-protector' is there somewhere on the gcc command line?
> 
> Yes, I see -fno-stack-protector on the gcc calls, for example:
> ----------------------------
> LD_PRELOAD=libgendep.so
> LD_LIBRARY_PATH=:/home/tommd/dev/L4/L4Re/build/tool/gendep/32
> GENDEP_TARGET=list_alloc.s.o GENDEP_BINARY=cc1    gcc -m32 -c
> -DL4SYS_USE_UTCB_WRAP=1         -DSYSTEM_x86_core2_l4f -DARCH_x86
> -DCPUTYPE_core2 -DL4API_l4f  -D_GNU_SOURCE
> -I/home/tommd/dev/L4/L4Re/build/pkg/l4util/idl/OBJ-x86-l4f
> -I/home/tommd/dev/L4/L4Re/build/include/x86/l4f
> -I/home/tommd/dev/L4/L4Re/build/include/l4f
> -I/home/tommd/dev/L4/L4Re/build/include/x86
> -I/home/tommd/dev/L4/L4Re/build/include   -nostdinc
> -I/home/tommd/dev/L4/L4Re/build/include/x86/uclibc
> -I/home/tommd/dev/L4/L4Re/build/include/uclibc
> -I/home/tommd/dev/L4/L4Re/build/include/contrib/libstdc++-v3
> -I/usr/lib/gcc/i686-redhat-linux/4.4.4/include
> -I/usr/lib/gcc/i686-redhat-linux/4.4.4/include-fixed       -g -O2
> -fno-strict-aliasing  -march=core2 -Wextra -Wall -Wstrict-prototypes
> -Wmissing-prototypes -Wmissing-declarations  -fno-common -std=gnu99
> -fno-stack-protector -fPIC -U__PIC__ -D__PIC__=1
> /home/tommd/dev/L4/L4Re/src/l4/pkg/l4util/lib/src/list_alloc.c -o
> list_alloc.s.o
> -----------------------------

Ok, guessed so. There's another one: -fno-stack-protector-all, could you
add this one to GCCNOSTACKPROTOPT_f in l4/mk/Makeconf and do make
oldconfig and redo? Does it make a difference?
Could be this is a F13 specific thing, we'll see.



Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list