ucli...@browserseal.com wrote: > I first tried to compile for ARM SkyeEye simulator with default settings, > i.e. glibc. The compilation failed at the glibc patch phase. > > I than changed glibc to uClibc (BTW, why glibc is the default, it used to > be uClibc !?) and the compilation failed with the following error: > > Hmmm, I seem to recall that it DID default to uClibc, but it's been a while since I started from scratch.
> CC libc/sysdeps/linux/arm/syscall.o > libc/sysdeps/linux/arm/syscall.c: In function 'syscall': > libc/sysdeps/linux/arm/syscall.c:28: error: '__NR_syscall' undeclared > (first use in this function) > libc/sysdeps/linux/arm/syscall.c:28: error: (Each undeclared identifier > is reported only once > libc/sysdeps/linux/arm/syscall.c:28: error: for each function it appears > in.) > make[3]: *** [libc/sysdeps/linux/arm/syscall.o] Error 1 > make[3]: Leaving directory `/unpackaged/uClinux-dist/uClibc' > make[2]: *** [uClibc] Error 2 > make[2]: Leaving directory `/unpackaged/uClinux-dist/lib' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/unpackaged/uClinux-dist/lib' > make: *** [subdirs] Error 1 > > > After I uClibc parameter CONFIG_ARM_OABI to CONFIG_ARM_EABI (BTW, why > isn't it the default ?) Because not all working arm-compatible toolchains support EABI....you just happen to be using one that does. > this error went away, but another one appeared > quite quickly > > make[3]: Entering directory `/unpackaged/uClinux-dist/user/boa' > make[3]: warning: -jN forced in submake: disabling jobserver mode. > for i in src ; do make -C $i all || exit ; done > make[4]: Entering directory `/unpackaged/uClinux-dist/user/boa/src' > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall -DEMBED -D__PIC__ -fpic > -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ -c -o > alias.o alias.c > In file included from > /unpackaged/uClinux-dist/uClibc/include/bits/socket.h:31, > from > /unpackaged/uClinux-dist/uClibc/include/sys/socket.h:35, > from arp.c:23: > /unpackaged/uClinux-dist/uClibc/include/limits.h:124:26: error: limits.h: > No such file or directory > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/games' > [ ! -d "inetd" ] || ( touch inetd/.sgbuilt_user && make -j1 -C inetd ) > || exit $? > make[3]: *** [arp.o] Error 1 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/dhcpcd-new' > In file included from > /unpackaged/uClinux-dist/uClibc/include/bits/socket.h:31, > from > /unpackaged/uClinux-dist/uClibc/include/sys/socket.h:35, > from defines.h:103, > from boa.h:32, > from alias.c:27: > /unpackaged/uClinux-dist/uClibc/include/limits.h:124:26: error: limits.h: > No such file or directory > make[2]: *** [dhcpcd-new] Error 2 > make[2]: *** Waiting for unfinished jobs.... > In file included from gdb/defs.h:27, > from server.h:20, > from utils.c:20: > /unpackaged/uClinux-dist/uClibc/include/limits.h:124:26: error: limits.h: > No such file or directory > make[3]: Entering directory `/unpackaged/uClinux-dist/user/inetd' > make[3]: warning: -jN forced in submake: disabling jobserver mode. > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall -DEMBED -D__PIC__ -fpic > -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ > -DSERVICES=\"/etc/services\" -DINETD_CONF=\"/etc/inetd.conf\" > -Wall -DMODIFY_CONFIG -DALT_INETD_CONF=\"/etc/config/inetd.conf\" > -c -o inetd.o inetd.c > make[3]: *** [utils.o] Error 1 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/gdbserver' > make[4]: *** [alias.o] Error 1 > make[4]: Leaving directory `/unpackaged/uClinux-dist/user/boa/src' > make[2]: *** [gdbserver] Error 2 > make[3]: *** [all] Error 2 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/boa' > make[2]: *** [boa] Error 2 > In file included from > /unpackaged/uClinux-dist/uClibc/include/bits/socket.h:31, > from > /unpackaged/uClinux-dist/uClibc/include/sys/socket.h:35, > from /unpackaged/uClinux-dist/uClibc/include/net/if.h:27, > from inetd.c:38: > /unpackaged/uClinux-dist/uClibc/include/limits.h:124:26: error: limits.h: > No such file or directory > inetd.c: In function ‘handle_incoming_fds’: > inetd.c:284: warning: pointer targets in passing argument 3 of ‘accept’ > differ in signedness > make[3]: *** [inetd.o] Error 1 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/inetd' > make[2]: *** [inetd] Error 2 > make[2]: Leaving directory `/unpackaged/uClinux-dist/user' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/unpackaged/uClinux-dist/user' > make: *** [subdirs] Error 1 > > This thread might help, try that instead of the "fix" you attempted afterwards: http://mailman.uclinux.org/pipermail/uclinux-dev/2009-May/000890.html > I managed to work around this problem by adding the following flag > VENDOR_CFLAGS=-I/usr/lib/gcc/arm-linux-gnueabi/4.3.2/include-fixed/ > > only to discover yet another issue: > > ucfront-gcc arm-linux-gnueabi-gcc -Wl,-elf2flt -msoft-float -D__PIC__ > -fpic -msingle-pic-base -Wl,-elf2flt -msoft-float -D__PIC__ -fpic > -msingle-pic-base -o dhcpcd arp.o buildmsg.o client.o dhcpcd.o peekfd.o > signals.o udpipgen.o > /usr/lib/gcc/arm-linux-gnueabi/4.3.2/../../../../arm-linux-gnueabi/bin/ld: > warning: cannot find entry symbol lf2flt; defaulting to 000080d0 > /unpackaged/uClinux-dist/uClibc/lib/libc.a(sigrestorer.o):(.ARM.exidx+0x0): > undefined reference to `__aeabi_unwind_cpp_pr1' > collect2: ld returned 1 exit status > make[3]: *** [dhcpcd] Error 1 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/dhcpcd-new' > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall > -I/usr/lib/gcc/arm-linux-gnueabi/4.3.2/include-fixed/ -DEMBED -D__PIC__ > -fpic -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ -c -o > response.o response.c > make[2]: *** [dhcpcd-new] Error 2 > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall > -I/usr/lib/gcc/arm-linux-gnueabi/4.3.2/include-fixed/ -DEMBED -D__PIC__ > -fpic -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ -c -o > signals.o signals.c > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall > -I/usr/lib/gcc/arm-linux-gnueabi/4.3.2/include-fixed/ -DEMBED -D__PIC__ > -fpic -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ -c -o > timestamp.o timestamp.c > ucfront-gcc arm-linux-gnueabi-gcc -Os -g -pipe > -msoft-float -fno-common -fno-builtin -Wall > -I/usr/lib/gcc/arm-linux-gnueabi/4.3.2/include-fixed/ -DEMBED -D__PIC__ > -fpic -msingle-pic-base -Dlinux -D__linux__ -Dunix -D__uClinux__ -c -o > util.o util.c > ucfront-gcc arm-linux-gnueabi-gcc -Wl,-elf2flt -msoft-float -D__PIC__ > -fpic -msingle-pic-base -Wl,-elf2flt -msoft-float -D__PIC__ -fpic > -msingle-pic-base -o boa alias.o auth.o boa.o cgi.o cgi_header.o > config.o get.o hash.o globals.o log.o nls.o pipe.o queue.o read.o > request.o response.o signals.o timestamp.o util.o -lcrypt > /usr/lib/gcc/arm-linux-gnueabi/4.3.2/../../../../arm-linux-gnueabi/bin/ld: > warning: cannot find entry symbol lf2flt; defaulting to 000080d0 > /unpackaged/uClinux-dist/uClibc/lib/libc.a(sigrestorer.o):(.ARM.exidx+0x0): > undefined reference to `__aeabi_unwind_cpp_pr1' > collect2: ld returned 1 exit status > make[4]: *** [boa] Error 1 > make[4]: Leaving directory `/unpackaged/uClinux-dist/user/boa/src' > make[3]: *** [all] Error 2 > make[3]: Leaving directory `/unpackaged/uClinux-dist/user/boa' > make[2]: *** [boa] Error 2 > make[2]: Leaving directory `/unpackaged/uClinux-dist/user' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `/unpackaged/uClinux-dist/user' > make: *** [subdirs] Error 1 > > > Sounds like a toolchain issue, not a source issue. I'm not an expert in this area though, perhaps someone else will respond.. > At which point I gave up. What happened to uClinux !!?? > > I tried both Codesourcery (uClinux version) and emdebian cross compiler > toolchains with the same results. > there are many codesourcery versions. They seem to be released on a set schedule. Which one are you using? > _______________________________________________ > uClinux-dev mailing list > uClinux-dev@uclinux.org > http://mailman.uclinux.org/mailman/listinfo/uclinux-dev > This message was resent by uclinux-dev@uclinux.org > To unsubscribe see: > http://mailman.uclinux.org/mailman/options/uclinux-dev > > _______________________________________________ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev