这类似于这个问题: On OS X, how do I find out what architecture a shared lib is compiled for?
除非我想知道 .dylib 是否会在 10.5.x 或 10.4 上运行,例如。
最佳答案
在 .dylib 上运行 otool -L
。这将向您显示它所依赖的库及其兼容版本。然后,针对感兴趣的操作系统中的库运行 otool -L
。这将向您显示(在第一行)该库的当前版本。如果当前版本至少是兼容版本,那么您的 .dylib 可以使用该库。对所有库重复此操作。
没有太多的捷径。 .dylib 不直接包含任何明确指示它所链接的 SDK。它仅通过库依赖项间接和隐含地执行此操作。
如果 .dylib 链接到中央系统库,例如/usr/lib/libSystem.B.dylib(这很可能),那么您可以使用与该库的兼容性作为与操作系统版本兼容的代理作为一个整体。
关于macos - 在 OS X 上,我如何找出共享库与哪些 OS X 版本兼容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22851688/