[CentOS-devel] libc.so.6(GLIBC_PRIVATE)(64bit) is needed but I cannot find it in CentOS 5.2
Erez Zilber
erezzi.list at gmail.com
Wed Aug 13 12:00:02 UTC 2008
Hi,
I'm using CentOS 5.2. I wrote a program that uses rtkaio (so my
Makefile contains -lrtkaio). The program runs successfully. The
problem began when I wanted to create a rpm for my program. I was able
to generate a binary rpm, but when I tried to install it, I got the
following error:
[root at klab002 tmp]# rpm -i /tmp/mypkg-1.0.x86_64.rpm
error: Failed dependencies:
libc.so.6(GLIBC_PRIVATE)(64bit) is needed by mypkg-1.0.x86_64.rpm
I checked the dependencies:
[root at klab002 tmp]# rpm -qRp /tmp/mypkg-1.0.x86_64.rpm
/bin/bash
/bin/sh
/bin/sh
/bin/sh
/usr/bin/python
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_PRIVATE)(64bit)
libnickel.so()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH
The problem is that librtkaio uses GLIBC_PRIVATE:
[root at klab002 tmp]$ nm /lib/rtkaio/librtkaio-2.5.so | grep PRIVATE
U __libc_dlopen_mode@@GLIBC_PRIVATE
U __libc_dlsym@@GLIBC_PRIVATE
U __libc_fatal@@GLIBC_PRIVATE
U __libc_pwrite@@GLIBC_PRIVATE
w __pthread_clock_gettime@@GLIBC_PRIVATE
w __pthread_clock_settime@@GLIBC_PRIVATE
U __pthread_unwind@@GLIBC_PRIVATE
U _rtld_global@@GLIBC_PRIVATE
But I couldn't find where these symbols are defined (e.g.
__libc_pwrite@@GLIBC_PRIVATE).
The workaround that I found is to add the following line to the spec
file: "provides: libc.so.6(GLIBC_PRIVATE)(64bit)"
I guess that there should be a better solution for that. Any idea?
Thanks,
Erez
More information about the CentOS-devel
mailing list