首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ldd命令libasan未显示

ldd命令libasan未显示
EN

Stack Overflow用户
提问于 2022-03-05 08:35:16
回答 1查看 53关注 0票数 0

我的开发机器中有一个二进制文件,ldd命令没有显示libasan。但是当我把相同的二进制文件复制到另一台生产机器时。ldd命令显示libasan。我不知道这是如何发生的。请帮帮我。

代码语言:javascript
复制
## DEV VM ##
cohesity - main: ldd <path>  | grep -i asan
cohesity - main: md5sum <path>
11152b37c616555eed06800ee499323a <path>
### Production machine ##
[support@suresh-test-005056af8cb9-node-1 ~]$ md5sum <path>
11152b37c616555eed06800ee499323a  <path>
[support@suresh-test-005056af8cb9-node-1 ~]$ ldd <path>  | grep -i asan
        libasan.so.4 => <path to libasan> (0x00007f72595e7000)
[support@suresh-test-005056af8cb9-node-1 ~]$ 

EN

回答 1

Stack Overflow用户

发布于 2022-03-06 06:30:04

我不知道这是怎么发生的。

ldd命令输出取决于以下几点:

recursively

  • local系统配置(用于搜索路径、任何preload库等)

通过将主二进制文件复制到不同的机器上,您只能保证“步骤1”是相同的。

“步骤2”中的一个共享库很可能是用-fsanitize=addressnode-1上构建的,而不是在"dev VM“中构建的。

您可以通过对readelf -d /path/to/foo.so | grep NEEDED.*libasan.so.4输出中的每个库使用ldd来找出哪个库。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71360688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档