日期:2014-05-16  浏览次数:21362 次

/usr/lib/librt.so是干什么用的?
/usr/lib/librt.so   是干什么用的。

我在程序中-lrt后,   用ldd看程序连接了哪些库:

$ldd   a.out
                librt.so.1   =>   /lib/tls/librt.so.1   (0x007cd000)
                libc.so.6   =>   /lib/tls/libc.so.6   (0x00c01000)
                libpthread.so.0   =>   /lib/tls/libpthread.so.0   (0x00d79000)
                /lib/ld-linux.so.2   (0x00be4000)
怎么会有libpthread.so.0呢?

我并没有-lpthread啊。

------解决方案--------------------
1、http://bama.ua.edu/cgi-bin/man-cgi?librt+3LIB
2、pthread是因为libc引用了,我没有tls环境无法验证,只是直觉
------解决方案--------------------
librt.so是glibc中对real-time部分的支持库。
pthread也是glibc缺省联接进来的。