【发布时间】:2023-03-31 18:50:01
【问题描述】:
在 Windows 上,有一个工具 Depends.exe 来发现 EXE/DLL 文件对其他 DDL 的依赖关系。哪个命令行工具在 Mac OS 和 Linux 上是等效的?
【问题讨论】:
标签: windows linux macos dependencies
在 Windows 上,有一个工具 Depends.exe 来发现 EXE/DLL 文件对其他 DDL 的依赖关系。哪个命令行工具在 Mac OS 和 Linux 上是等效的?
【问题讨论】:
标签: windows linux macos dependencies
otool-L文件 ldd文件 如果这些命令不能提供您想要的,在 Mac OS X 上,您可以使用 otool-lfile 转储所有加载命令。在 Linux 上,您可以使用 readelf -d file 转储动态部分的全部内容。
【讨论】:
otool -L,但所做的只是列出一堆用于构建库的 .o 文件。
您还可以尝试 MacDependency (https://github.com/kwin/macdependency),它为 MacOS X 上的 otool 提供了 UI 替代品。它还显示了完整的依赖关系树和导出的符号。
【讨论】:
在终端中尝试 ldd。这将为您提供二进制文件所需的动态库列表。
【讨论】:
你可以在你的 bashrc 中加入类似以下的内容,这样你就可以始终使用“ldd”作为接口,但如果机器是 mac,它将重定向 macos 等效的接口。
# Macos equivalent of ldd
if [[ "$OSTYPE" =~ "darwin"* ]]
then
alias ldd="otool -L"
fi
【讨论】: