otool -L:不是 Mach-O 文件类型

otool -L: Not a Mach-O filetype

我正在尝试在 OS X 上使用 Magick.Net,并且我一直在按照 this 指南进行操作。这是 Linux 的指南,但是 OS X 是 Unix,所以我 假设 它应该工作相同。

我想我快要让它工作了,但我遇到了依赖项问题,我想查看 .so 文件的依赖项。
所以我用谷歌搜索了如何在 Linux 上查看 .so 文件的依赖关系,然后偶然发现了 otool -L.
该工具查看依赖项,还 查看是否可以找到它需要的依赖项,这正是我想要的,因为它使一切变得更容易。

但是当我 运行 otool -L Magick.NET-Q8-x64.dll.so 时,我收到错误消息 Not a Mach-O filetype

那我现在该怎么办?有没有我可以使用的替代方案,或者我使用的程序有误?

OS X is Unix so I assume that it should work the same

问题就出在这里。 macOS 是基于 Unix 的,但其可执行文件格式 (Mach-O) 是 macOS / OS X 及其前身 NeXT 所独有的。 Otool 在 macOS 上需要 Mach-O 文件,而不是 linux .so 文件,因为它们不是二进制兼容的。

作为您链接到状态的指南它需要一个 Linux 构建机器 运行ning;然而,Linux Is Not Unix .

Is there an alternative I can use

按照指南中的说明进行操作,其中规定要求是 Linux 机器和 运行 otool Linux。