博客
关于我
Linux:ldd命令详解
阅读量:800 次
发布时间:2023-02-05

本文共 720 字,大约阅读时间需要 2 分钟。

ldd工具:打印程序依赖的共享库列表

语法

ldd(选项)(参数)

其中,选项参数具体如下:

选项

  • --version:显示指令版本号
  • -v:详细信息模式,打印所有相关信息
  • -u:打印未使用的直接依赖
  • -d:执行重定位和报告丢失对象
  • -r:执行数据对象和函数重定位,报告丢失对象和函数
  • --help:显示帮助信息

参数

  • 文件:指定可执行程序或文库

工作原理

ldd并非可执行程序,而是一个 shell 脚本。其工作原理基于设置一系列环境变量(如 LD_TRACE_LOADED_OBJECTSLD_WARN 等)。当 LD_TRACE_LOADED_OBJECTS 设置为非空值时,可执行程序运行时会仅显示模块的依赖信息而不实际执行程序。

ldd通过 ld-linux.so(elf动态库的装载器)实现其功能。ld-linux.so 在程序运行前获得控制权,因此当上述环境变量设置时,ldd会展示可执行模块的依赖关系。实际上,可以直接调用 ld-linux.so 模块进行类似操作,例如:

/lib/ld-linux.so.2 --list program(相当于 ldd program

示例使用

# 打印可执行程序的直接依赖export LD_TRACE_LOADED_OBJECTS=1./your_program# 显示详细依赖信息(推荐使用)export LD_VERBOSE=1export LD_TRACE_LOADED_OBJECTS=1./your_program

注意事项

  • 文件路径:请确保提供的文件路径正确,避免出现 file not found 错误。
  • 环境变量:请谨慎设置相关环境变量,以免影响系统正常功能。

转载地址:http://bwufk.baihongyu.com/

你可能感兴趣的文章
Pandas df.iterrows() 并行化
查看>>
pandas GROUPBY+变换和多列
查看>>
pandas Groupby:创建两列的Groupby时,如何按正确的顺序对工作日进行排序?
查看>>
Pandas matplotlib 无法显示中文
查看>>
pandas PIVOT_TABLE保持索引
查看>>
Pandas Plots:周末的单独颜色,x 轴上漂亮的打印时间
查看>>
pandas to_latex() 转义数学模式
查看>>
Pandas 中文官档 ~ 基础用法4
查看>>
Pandas 中的多索引旋转
查看>>
Pandas 中的日期范围
查看>>
pandas 中的时间序列箱线图
查看>>
Pandas 使用指南
查看>>
pandas 分组并使用最小值更新
查看>>
pandas 均值(mean), 均值填充NA(fill_na)
查看>>
Pandas 对数据框的布尔比较
查看>>
pandas 将通话数据分割为15分钟的间隔
查看>>
pandas 找到局部最大值和最小值
查看>>
pandas 按日期和年份分组,并汇总金额
查看>>
pandas 数据帧到PostgreSQL表中使用的是没有SQLAlChemy的心理复制2吗?
查看>>
pandas 数据帧多行查询
查看>>