我正在尝试为使用我使用macports安装的某些库的游戏创建应用程序包 . 我想将依赖项放在bundle中,但我却不知道如何做到这一点 .
我已编译游戏并尝试使用install_name_tool来更改使用的路径,以便可执行文件在包内搜索,我没有错误,但路径不会改变 . 例如:install_name_tool -change libSDL-1.2.0.dylib @executable_path /../ Frameworks / libSDL-1.2.0.dylib meandmyshadow
可执行文件是使用CMake生成的Makefile构建的 .
XCode会是更好的选择吗?我正在采取的步骤中是否有任何遗漏?
1 回答
要回答有关如何使用
install_name_tool
的具体问题:如果你使用otool -L meandmyshadow
查看meandmyshadow的库链接,它可能看起来像这样:使用
install_name_tool
更改程序中的引用时,需要使用完整引用 . 您指定要更改引用libSDL-1.2.0.dylib
,但需要指定绝对路径,例如/opt/local/lib/libSDL-1.2.0.dylib
:至于关于如何将库包含到应用程序包中的更大问题,您可以使用
install_name_tool
进行上述手动操作,或者考虑尝试dylibbundler自动为您执行此操作 . 您可以使用MacPorts安装它:sudo port install dylibbundler
.