Trouble cross compiling glibc 2.7 with powerpc 440FP target

Jibo axzi@austin.rr.com
Wed Aug 27 05:45:00 GMT 2008


I've had to work through some trouble spots to get glibc to compile for 
the PowerPC 440FP so far on a cygwin build machine.  I've been able to 
work through most of the issues, but this one is eluding me.  It gets 
very far and is now compiling the nscd portion of glibc.  It gets to the 
link stage and fails due to multiple symbols.  Here is the output.  Is 
nscd essential?  In any case, I did verify in the glibc-2.7 tarball that 
the source file does appear twice.  Once in resolv and the one in nscd.  
So what do I do and how can I get around this?  I've included the 
configuration line and make lines below the error.  I know i am not 
using crosstool (mainly because I could not get it to work for this 
configuration), but I've maintained the directory structure so that our 
other targets are in the same places.

Thanks
- ame

/c/temp/build-glibc/nscd/connections.o: In function `begin_drop_privileges':
/c/temp/glibc-2.7/nscd/connections.c:1919: warning: Using 'getgrouplist' 
in stat
ically linked applications requires at runtime the shared libraries from 
the gli
bc version used for linking
/c/temp/glibc-2.7/nscd/connections.c:1900: warning: Using 'getpwnam' in 
statical
ly linked applications requires at runtime the shared libraries from the 
glibc v
ersion used for linking
/c/temp/build-glibc/libc.a(res_hconf.o): In function `_res_hconf_init':
/c/temp/glibc-2.7/resolv/res_hconf.c:360: multiple definition of 
`_res_hconf_ini
t'
/c/temp/build-glibc/nscd/res_hconf.o:/c/temp/glibc-2.7/nscd/../resolv/res_hconf.
c:360: first defined here
collect2: ld returned 1 exit status
make[2]: *** [/c/temp/build-glibc/nscd/nscd] Error 1
make[2]: Leaving directory `/c/temp/glibc-2.7/nscd'
make[1]: *** [nscd/others] Error 2
make[1]: Leaving directory `/c/temp/glibc-2.7'
make: *** [all] Error 2

echo "libc_cv_forced_unwind=yes" > config.cache
echo "libc_cv_c_cleanup=yes" >> config.cache
#echo "libc_cv_ppc_machine=yes">> config.cache

BUILD_CC=gcc 
PATH=/opt/crosstool/powerpc-440-linux-gnu/gcc-4.2.4-glibc-2.7/usr/b
in:${PATH} CC=powerpc-440-linux-gnu-gcc AR=powerpc-440-linux-gnu-ar 
RANLIB=power
pc-440-linux-gnu-ranlib  ../glibc-2.7/configure --prefix=/usr 
--build=i686-pc-cy
gwin --host=powerpc-440-linux-gnu --with-fp --with-__thread --with-tls 
--enable-
kernel=2.6.0 --disable-sanity-checks --without-cvs --disable-profile 
--disable-d
ebug --without-gd --disable-shared --enable-add-ons=nptl \
--with-headers=/opt/crosstool/powerpc-440-linux-gnu/gcc-4.2.4-glibc-2.7/usr/powe
rpc-440-linux-gnu/usr/include  \
--with-binutils=/opt/crosstool/powerpc-440-linux-gnu/gcc-4.2.4-glibc-2.7/usr/pow
erpc-440-linux-gnu/bin/ \
--cache-file=config.cache \
--enable-c99

BUILD_CC=gcc 
PATH=/opt/crosstool/powerpc-440-linux-gnu/gcc-4.2.4-glibc-2.7/usr/b
in:${PATH} CC=powerpc-440-linux-gnu-gcc AR=powerpc-440-linux-gnu-ar 
RANLIB=power
pc-440-linux-gnu-ranlib  make



More information about the Libc-help mailing list