在多线程编程中,我们用gcc -Wall -g -lpthread log.h log.c List.c List.h server.c -o server.exe编译的时候,我们会加上一个-lpthread,表示要用到gcc默认路径之外的库,但是这个库文件在哪里呢?我们可以用ldd命令来看。
比如 bard@bard-desktop:~/sharing$ ldd server.exe
linux-gate.so.1 => (0x001f7000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00713000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x008a3000)
/lib/ld-linux.so.2 (0x00a7a000)
bard@bard-desktop:~/sharing$
我们就可以看到这些库了,原来pthread 库是/lib/tls/i686/cmov/libpthread.so.0在这里,呵呵。