我们在Linux中安装一个软件时,有时候常常会遇到找不到.so文件,这种情况一般发生在手动安装的情况下
对于这种情况我们使用一个可执行文件查看该文件的动态依赖库
使用 ldd
命令查看可执行文件的依赖路所在路径
➜ sbin ldd nginx
linux-vdso.so.1 (0x00007ffe363a7000)
libcrypt.so.2 => /usr/lib/libcrypt.so.2 (0x00007f70b0be5000)
libpcre2-8.so.0 => /usr/lib/libpcre2-8.so.0 (0x00007f70b0b4a000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007f70b0b30000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f70b094e000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f70b0d2e000)
我们从上面看到该可执行文件依赖了linux-vdso.so.1
,libcrypt.so.2
,libpcre2-8.so.0
, libz.so.1
,libc.so.6
链接库。大部分库都是指定了/usr/lib/*