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:

  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 ?) 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

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


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.
_______________________________________________
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

Reply via email to