ldd命令

功能:查看程序依赖库


例如:

在当前文件夹下有一个文件 test.c

内容如下:

#include<stdio.h>
int main()
{
    printf("Hello World\n");
    return 0;
}


经过 gcc -g -o test test.c 编译连接后会生成一个可执行文件 test


 ldd命令 查看程序依赖库 _查看程序


直接 ./test 运行后,可以看到屏幕输出 Hello World


 ldd命令 查看程序依赖库 _查看程序_02


此时输入  ldd test 会看到 test 程序运行所依赖的库:


 ldd命令 查看程序依赖库 _ldd_03


该部分内容如下:


  • 第一列程序需要依赖什么库

  • 第二列系统提供的与程序需要的库所对应的库

  • 第三列库加载的开始地址


通过上面的信息,我们可以得到以下几个信息:

    通过对比第一列和第二列,我们可以分析程序需要依赖的库和系统实际提供的,是否相匹配

    通过观察第三列,我们可以知道在当前的库中的符号在对应的进程的地址空间中的开始位置

如果依赖的某个库找不到,通过这个命令可以迅速定位问题所在;

注意: ldd不是个可执行程式,而只是个shell脚本!