Subject: glibc make problems (i686 -> StrongARM)

From: "Jim Fischer" <[email-masked]>
Date: Sun, 9 Jul 2000 18:14:33 -0700

Using the following components I am able to create an i686 to StrongARM
(EBSA285) cross gcc compiler, and I can use that compiler to create a Linux
'zImage' kernel image:

----------
Components:

binutils-2.9.5.0.34-1.src.rpm

gcc-core-2.95.2.tar.gz
gcc-g++-2.95.2.tar.gz
gcc-2.95.2-arm4.patch.gz

kernel-2.2.14-5.0.src.rpm
patch-2.2.14-rmk6.gz

glibc-2.1.3.tar.gz
glibc-crypt-2.1.tar.gz
glibc-linuxthreads-2.1.3.tar.gz

After I create and install the binutils, the kernel sources, and the gcc
cross-compiler, I install, patch, configure, and make the glibc sources. The
glibc make process runs for about 15 minutes (generating about 10MB worth of
log file entries in the process) before it dies with the following error
messages:

----------
...
arm-linux-gcc -B/armtools/bin/ -shared -Wl,-O1 -o
/armtools/work/glibc_/db2/libdb.so -Wl,-dynamic-linker=/armtools/arm-linux/l
ib/ld-linux.so.2 -B/armtools/work/glibc_/csu/ -Wl,--version-script=/armtools
/work/glibc_/libdb.map -Wl,-soname=libdb.so.3 -L/armtools/work/glibc_ -L/arm
tools/work/glibc_/math -L/armtools/work/glibc_/elf -L/armtools/work/glibc_/n
ss -L/armtools/work/glibc_/nis -L/armtools/work/glibc_/db2 -L/armtools/work/
glibc_/rt -L/armtools/work/glibc_/resolv -L/armtools/work/glibc_/linuxthread
s -Wl,-rpath-link=/armtools/work/glibc_:/armtools/work/glibc_/math:/armtools
/work/glibc_/elf:/armtools/work/glibc_/nss:/armtools/work/glibc_/nis:/armtoo
ls/work/glibc_/db2:/armtools/work/glibc_/rt:/armtools/work/glibc_/resolv:/ar
mtools/work/glibc_/linuxthreads -Wl,--whole-archive
/armtools/work/glibc_/db2/libdb_pic.a /armtools/work/glibc_/elf/interp.os
/armtools/work/glibc_/libc.so -Wl,--no-whole-archive
rm -f /armtools/work/glibc_/db2/libdb.so.3.new
/bin/sh ../scripts/rellns-sh /armtools/work/glibc_/db2/libdb.so
/armtools/work/glibc_/db2/libdb.so.3.new
mv -f /armtools/work/glibc_/db2/libdb.so.3.new
/armtools/work/glibc_/db2/libdb.so.3
arm-linux-gcc -B/armtools/bin/ -nostdlib -nostartfiles -o
/armtools/work/glibc_/db2/makedb -Wl,-dynamic-linker=/armtools/arm-linux/lib
/ld-linux.so.2 /armtools/work/glibc_/csu/crt1.o
/armtools/work/glibc_/csu/crti.o
`arm-linux-gcc -B/armtools/bin/ --print-file-name=crtbegin.o`
/armtools/work/glibc_/db2/makedb.o
/armtools/work/glibc_/db2/libdb.so.3 -Wl,-rpath-link=/armtools/work/glibc_:/
armtools/work/glibc_/math:/armtools/work/glibc_/elf:/armtools/work/glibc_/ns
s:/armtools/work/glibc_/nis:/armtools/work/glibc_/db2:/armtools/work/glibc_/
rt:/armtools/work/glibc_/resolv:/armtools/work/glibc_/linuxthreads
/armtools/work/glibc_/libc.so.6 /armtools/work/glibc_/libc_nonshared.a -lgcc
`arm-linux-gcc -B/armtools/bin/ --print-file-name=crtend.o`
/armtools/work/glibc_/csu/crtn.o
/armtools/work/glibc_/libc.so.6: undefined reference to `__dup'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getpid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__setsid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__select'
/armtools/work/glibc_/libc.so.6: undefined reference to `utime'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `munmap'
/armtools/work/glibc_/libc.so.6: undefined reference to `__wait4'
/armtools/work/glibc_/libc.so.6: undefined reference to `__libc_fcntl'
/armtools/work/glibc_/libc.so.6: undefined reference to `__ftruncate'
/armtools/work/glibc_/libc.so.6: undefined reference to `__write'
/armtools/work/glibc_/libc.so.6: undefined reference to `__mprotect'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `getpid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__dup2'
/armtools/work/glibc_/libc.so.6: undefined reference to `truncate'
/armtools/work/glibc_/libc.so.6: undefined reference to `__read'
/armtools/work/glibc_/libc.so.6: undefined reference to `setitimer'
/armtools/work/glibc_/libc.so.6: undefined reference to `__unlink'
/armtools/work/glibc_/libc.so.6: undefined reference to `readlink'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `getuid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__open'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getrusage'
/armtools/work/glibc_/libc.so.6: undefined reference to `__adjtimex'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `select'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getgid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__libc_read'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `lseek'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getpgid'
/armtools/work/glibc_/libc.so.6: undefined reference to `alarm'
/armtools/work/glibc_/libc.so.6: undefined reference to `__kill'
/armtools/work/glibc_/libc.so.6: undefined reference to `uname'
/armtools/work/glibc_/libc.so.6: undefined reference to `__personality'
/armtools/work/glibc_/libc.so.6: undefined reference to `__setitimer'
/armtools/work/glibc_/libc.so.6: undefined reference to `__chmod'
/armtools/work/glibc_/libc.so.6: undefined reference to `setrlimit'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `write'
/armtools/work/glibc_/libc.so.6: undefined reference to `__setpgid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__gettimeofday'
/armtools/work/glibc_/libc.so.6: undefined reference to `__sigaltstack'
/armtools/work/glibc_/libc.so.6: undefined reference to `__statfs'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getrlimit'
/armtools/work/glibc_/libc.so.6: undefined reference to `__nanosleep'
/armtools/work/glibc_/libc.so.6: undefined reference to `__chdir'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `read'
/armtools/work/glibc_/libc.so.6: undefined reference to `__readlink'
/armtools/work/glibc_/libc.so.6: undefined reference to `__ioctl'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `unlink'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getegid'
/armtools/work/glibc_/libc.so.6: undefined reference to `fork'
/armtools/work/glibc_/libc.so.6: undefined reference to `__pipe'
/armtools/work/glibc_/libc.so.6: undefined reference to `__libc_open'
/armtools/work/glibc_/libc.so.6: undefined reference to `getsid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__chown'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `time'
/armtools/work/glibc_/libc.so.6: undefined reference to `__lseek'
/armtools/work/glibc_/libc.so.6: undefined reference to `__fchdir'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `fsync'
/armtools/work/glibc_/libc.so.6: undefined reference to `__libc_lseek'
/armtools/work/glibc_/libc.so.6: undefined reference to `__rmdir'
/armtools/work/glibc_/libc.so.6: undefined reference to `__fstatfs'
/armtools/work/glibc_/libc.so.6: undefined reference to `__close'
/armtools/work/glibc_/libc.so.6: undefined reference to `__getuid'
/armtools/work/glibc_/libc.so.6: undefined reference to `__munmap'
/armtools/work/glibc_/libc.so.6: undefined reference to `__times'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `open'
/armtools/work/glibc_/libc.so.6: undefined reference to `__libc_write'
/armtools/work/glibc_/libc.so.6: undefined reference to `__fcntl'
/armtools/work/glibc_/libc.so.6: undefined reference to `__fork'
/armtools/work/glibc_/libc.so.6: undefined reference to `__access'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `fcntl'
/armtools/work/glibc_/db2/libdb.so.3: undefined reference to `close'
/armtools/work/glibc_/libc.so.6: undefined reference to `__geteuid'
collect2: ld returned 1 exit status
arm-linux-gcc: file path prefix `/armtools/bin/' never used
make[2]: *** [/armtools/work/glibc_/db2/makedb] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/glibc-2.1.3/db2'
make[1]: *** [db2/others] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/glibc-2.1.3'
make: *** [all] Error 2

----------

Apparently, the build process is not generating object code for the kernel
interface, and I haven't been able to figure out what's causing this. Any
ideas ?

Jim

unsubscribe: body of `unsubscribe linux-arm' to [email-masked]
++        Please use [email-masked] for           ++
++                        kernel-related discussions.                      ++