symbol clashes in libpthread.a and libc.a
Cheung Yik Pang
yp.cheung at pithk.com
Wed Feb 8 04:45:29 UTC 2006
Hi list,
Here is some updates. I checked out the uClibc svn head this morning.
The linking problem was gone. Thanks for fixing that.
Yet it reminds me that why I was still using the snapshot from
20060121. Because I tried a couple of snapshots back from 23th and
24th Jan and they wouldn't build. They both failed for the sendfile64
issue.
Although today's built was successful, I still had to disable LFS
support. Otherwise, the building process failed with:
CC libc/sysdeps/linux/common/sendfile.o
libc/sysdeps/linux/common/sendfile.c:19: error: conflicting types for
'sendfile64'
./include/sys/sendfile.h:47: error: previous declaration of 'sendfile64'
was here
libc/sysdeps/linux/common/sendfile.c:19: error: conflicting types for
'sendfile64'
./include/sys/sendfile.h:47: error: previous declaration of 'sendfile64'
was here
make: *** [libc/sysdeps/linux/common/sendfile.o] Error 1
Another problem is that all programs, including helloworld, get
segfaults when they exit:
hello wo[122] helloworld: arm syscall 10420360
rld!
Code: GPF: pid(122, <helloworld>) (SVC pc=900a7700 r0=00000006 r3=fffffffc
sp=90
7b7ef4 lr=900aebbc)
0ffffffc ef9f0088 (ea017ffe) e59ff410 ea0000bb
pc : [<00000004>] lr : [<91dd30ac>] Not tainted
sp : 91ddfedc ip : 91ddfeb0 fp : 91ddfeec
r10: 91dd4124 r9 : 00000000 r8 : 91dd0180
r7 : 00000001 r6 : 91dd6774 r5 : 91dd40e4 r4 : 00000000
r3 : 00000001 r2 : 00000000 r1 : 91dd5771 r0 : 00000000
Flags: nzCv IRQs on FIQs on Mode USER_32 Segment user
Control: 1007
Function entered at [<91dd304c>] from [<91dd1748>]
r4 = 91DDFF18
Function entered at [<91dd1680>] from [<00000000>]
Illegal instruction
Any ideas?? Thank you.
-Cheung
> Hi list,
>
> I have just updated my toolchain from gcc 3.4.3, uclibc 0.9.26 to gcc
> 3.4.5, uclibc snapshot 20060121 under an armnommu platform. The
> binutils version is 2.15.90.0.1.1. The reason that I updated was
> that I needed to use vfork and pthread at the same time in my
> application. And uClibc 0.9.26 failed with "undefined reference to
> `__libc_vfork'".
>
> I wrote a small program test.c (attached) to see if the new toolchain
> could handle the linking properly.
>
> The result was a whole lot of symbol clashes with libpthread.a and
> libc.a. Please see the attachment.
>
> I have also built a toolchain with gcc 3.4.5 and uclibc 0.9.26. It
> gave the same "undefined reference" error as the gcc 3.4.3 toolchain.
> So I think the problem is in uclibc.
>
> The .config file of my uClibc settings is attached and my gcc config
> is:
>
> arm-elf-gcc -v
> Reading specs from
> /root/pang/pmp_8620l/armutils_2.5.91.0/custom_toolchain.uclibc-cvs.nolocale/arm-uclinux-tools/lib/gcc/arm-uclinux-elf/3.4.5/specs
> Configured with:
> /root/pang/pmp_8620l/armutils_2.5.91.0/custom_toolchain.uclibc-cvs.nolocale/gcc-3.4.5/configure
> --target=arm-uclinux-elf
> --prefix=/root/pang/pmp_8620l/armutils_2.5.91.0/custom_toolchain.uclibc-cvs.nolocale/arm-uclinux-tools
> --enable-languages=c,c++ --enable-multilib --enable-target-optspace
> --with-gnu-ld --disable-__cxa_atexit --enable-cstdio=stdio
> --disable-clocale --disable-nls --disable-checking --enable-threads=posix
> --disable-libstdcxx-pch --enable-cxx-flags=-D_ISOC99_SOURCE -D_BSD_SOURCE
> -D_LIBC -D_GNU_SOURCE --with-float=soft --disable-shared --enable-c99
> --enable-c-mbchar
> Thread model: posix
> gcc version 3.4.5
>
> Could anyone shed some light on this problem please?? Thank you very
> much.
>
> -Cheung_______________________________________________
> uClibc mailing list
> uClibc at uclibc.org
> http://busybox.net/cgi-bin/mailman/listinfo/uclibc
More information about the uClibc
mailing list