将 dylib 包含到 OS X Framework 中

Include a dylib into an OS X Framework

今天,我正在尝试制作 mediainfo 库的 Objective-C 包装器。我还写了两个演示项目(一个写在Objective-C,另一个写在Swift)。

我想将 mediainfo 的 dylib 包含到框架包中,这样用户就看不到它。我的目的是创建一个可在我的其他 Xcode 项目中拖动的框架。

我尝试使用 install_name_tool 和 otool 来定位 dylib 的路径,但没有任何反应。应用程序无法加载 dylib 或 Xcode 崩溃。

代码可在 GitHub 上获得。我尝试使用 Xcode 7 进行编译,当编译示例应用程序时它崩溃了,但当我只编译框架时它不会崩溃。

我找到了解决方案:

  • 作为每个dylib,我们必须使用install-name-tool来指定install-paths。

  • 我们还必须使用我们的开发者 ID 对框架和包含的 dylib 进行代码签名。