Linux中ldd命令主要用于查看程式运行所需的共享库linux可以执行dig命令吗,这么ldd命令具体要怎么使用呢?下边就给你们介绍下Linux下ldd命令的使用方式
ldd本身不是一个程序linux系统怎么样,而仅是一个shell脚本:ldd可以列举一个程序所须要得动态链接库(so)
我们可以用which命令找到ldd的位置:
$ which ldd
/usr/bin/ldd
注意:在ldd命令复印的结果中,“=>”左边的表示该程序须要联接的共享库之so名称,左边表示由Linux的共享库系统找到的对应的共享库在文件系统中的具体位置。默认情况下,/etc/ld.so.conf文件中包含有默认的共享库搜索路径。
ldd
查看其依赖的共享库文件。
知识点:
1、如果使用ldd命令时没有找到对应的共享库文件和其具体位置,可能是两种情况导致的:
共享库没有安装在该系统中;
共享库保存在/etc/ld.so.conf文件列举的搜索路径之外的位置。
一般情况下,许多开放源代码的程序或函数库就会默认将自己安装到/usr/local目录下的相应位置(如:/usr/local/bin或/usr/local/lib),便于与系统自身的程序或函数库相区别。而许多Linux系统的/etc/ld.so.conf文件中默认又不包含/usr/local/lib。为此,常常会出现早已安装了共享库,而且却未能找到共享库的情况。具体解决办法如下:
检测/etc/ld.so.conf文件,假如其中缺乏/usr/local/lib目录,就添加进去;注意:在更改了/etc/ld.so.conf文件或则在系统中安装了新的函数库以后,须要运行一个命令:ldconfig,该命令拿来刷新系统的共享库缓存,即/etc/ld.so.cache文件。为了减轻共享库系统的库搜索时间,共享库系统维护了一个共享库so名称的缓存文件/etc/ld.so.cache。为此,在安装新的共享库以后百度网盘LINUX,一定要运行ldconfig刷新该缓存。
2、使用nm命令也可以获取库函数的信息;nm命令可以列举一个函数库文件中的符号表linux可以执行dig命令吗,它对静态的库函数和共享的库函数都能起作用。