problems with sem_open
Rob Landley
rob at landley.net
Thu Apr 22 04:42:11 UTC 2010
On Wednesday 21 April 2010 08:23:40 Matthias Hofmann wrote:
> Hello,
>
> typing ldd to the shared library has the following output:
>
> linux-gate.so.1 => (0xb7fad000)
> libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7d5f000)
> libm.so.0 => /usr/lib/libm.so.0 (0xb7d52000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7d48000)
> libc.so.0 => /usr/lib/libc.so.0 (0xb7cfb000)
> libc.so.6 => /lib/libc.so.6 (0xb7bce000)
> ld-uClibc.so.0 => /usr/lib/ld-uClibc.so.0 (0xb7bc7000)
> /lib/ld-linux.so.2 (0xb7fae000)
>
> seems to me that he is using both versions of libc, the glibc and uclibc.
> maybe he uses the wrong libc version to call sem_open?
Libraries can link against other libraries. You grabbed one of the versions
of a library (probably your libgcc_s.so.1) which leaked a reference to
libc.so.6, because that's what it had been linked against.
Try adding the "--static-libgcc" flag to your build.
Rob
--
Latency is more important than throughput. It's that simple. - Linus Torvalds
More information about the uClibc
mailing list