动态库和OSX应用程序

时间:2012-12-08 14:40:05

标签: macos dll

我正在构建和OS X应用程序,需要一组动态库才能运行(Graphviz库)。在我正在开发的机器上工作正常但是当我尝试在另一台机器上运行应用程序时,应用程序崩溃(这并不让我感到惊讶)可能是因为它找不到库,它们已安装但位于不同的位置。

我的问题是确保您的计划有效的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

Graphviz libraries 安装到“/usr/local”,but can be installed in other places

有很多方法可以在你构建的应用程序包中包含dylib(this related question's answer has more info),但是在Xcode中设置构建步骤/阶段以在构建时执行额外的步骤(例如呼叫“install_name_tool”指向“@executable_path”。

如果您的应用程序将安装在不太多的计算机上,我建议您确保将Graphviz正确安装到预期的位置。如果你打算远远地分发这个应用程序您可以在应用包中包含Graphviz dylibs。第三种 - 可能 - 选项可能是将Graphviz安装程序从您创建的安装程序调用为子安装程序。