【问题标题】:What is the clang analogue of ldd?ldd 的 clang 类似物是什么?
【发布时间】:2014-05-16 14:19:52
【问题描述】:

如何找出可执行文件所依赖的 DLL?

在具有 GNU 开发工具链 (gcc &c) 的系统上,我使用 ldd,但是 clang 系统呢,例如 Mac OS X(ldd)?

【问题讨论】:

  • 你试过ldd 吗?操作系统必须能够找出所需的库,所以 clanggcc 必须做几乎相同的事情。
  • @MSalters:macosx 没有ldd
  • 呃,显然是otool -L。我没有说明的一点是编译器无关紧要(MacOSX 有一个 gcc 端口)
  • @MSalters:请将您的评论变成答案,以便我接受并关闭问题。谢谢!

标签: clang ldd


【解决方案1】:

在 Mac OSX 上,您将使用 otool -L 而不是 ldd。无论您使用哪种编译器,这都有效。其他操作系统可能还有其他工具;例如在 Windows 上,你会使用 Dependency Walker

【讨论】:

【解决方案2】:

llvm-readelf ---needed-libs 是 ldd 的 clang 类似物。这是official documentation

~/weechat $ llvm-readelf --needed-libs bin/weechat
NeededLibraries [
  libc.so
  libcurl.so
  libdl.so
  libgcrypt.so
  libgnutls.so
  libgpg-error.so
  libiconv.so
  libm.so
  libncursesw.so.6
]

【讨论】:

  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 2017-04-14
  • 2019-10-16
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 2011-05-31
  • 2020-04-29
  • 1970-01-01
  • 2012-10-01
相关资源
最近更新 更多