查看LIBC版本

本文介绍如何通过.so文件获取GLIBC版本,查看系统链接库情况,理解ldd和ldd命令的输出,以诊断和解决程序依赖问题。重点在于分析程序依赖库的匹配和库加载地址的理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果题目提供了.so文件,可以尝试直接从.so文件中获取GLIBC的版本

strings .so | grep "GLIBC"

如果要查看系统当前的链接库情况可以如下命令

ldd --version

如果要查看题目的链接信息,可以如下命令

syc@ubuntu:~/Downloads/works$ ldd ./warmup_csaw_2016 
	linux-vdso.so.1 (0x00007ffed0313000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f1eb69ea000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f1eb6bed000)
  • 第一列:程序需要依赖什么库
  • 第二列: 系统提供的与程序需要的库所对应的库
  • 第三列:库加载的开始地址

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

  • 通过对比第一列和第二列,我们可以分析程序需要依赖的库和系统实际提供的,是否相匹配
  • 通过观察第三列,我们可以知道在当前的库中的符号在对应的进程的地址空间中的开始位置
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值