Macos 使用可执行文件打包某些macports库以创建应用程序包

Macos 使用可执行文件打包某些macports库以创建应用程序包,macos,shared-libraries,bundle,macports,Macos,Shared Libraries,Bundle,Macports,我正在尝试为一个游戏创建一个应用程序包,它使用我使用macports安装的一些库。我想将依赖项放在捆绑包中,但我不知道如何做到这一点 我已经编译了这个游戏,并尝试使用install_name_工具来更改所使用的路径,以便在捆绑包中搜索可执行文件,我没有得到任何错误,但路径没有更改。例如。: 安装_name_工具-更改libSDL-1.2.0.dylib@executable_path/。/Frameworks/libSDL-1.2.0.dylib meanshadow 可执行文件是使用CMake

我正在尝试为一个游戏创建一个应用程序包,它使用我使用macports安装的一些库。我想将依赖项放在捆绑包中,但我不知道如何做到这一点

我已经编译了这个游戏,并尝试使用install_name_工具来更改所使用的路径,以便在捆绑包中搜索可执行文件,我没有得到任何错误,但路径没有更改。例如。: 安装_name_工具-更改libSDL-1.2.0.dylib@executable_path/。/Frameworks/libSDL-1.2.0.dylib meanshadow

可执行文件是使用CMake生成的Makefile构建的


XCode是更好的选择吗?我所采取的步骤中有什么遗漏吗?

回答您关于如何使用
安装\u name\u工具的具体问题:如果您使用
otool-L meandmyshadow
查看meandmyshadow的库链接,可能会出现如下情况:

meandmyshadow:
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
    /opt/local/lib/libSDL-1.2.0.dylib (compatibility version 12.0.0, current version 12.3.0)
    ...
使用
install\u name\u tool
更改程序中的引用时,需要使用完整的引用。您指定要更改引用
libSDL-1.2.0.dylib
,但需要指定绝对路径,例如
/opt/local/lib/libSDL-1.2.0.dylib

install_name_tool -change /opt/local/lib/libSDL-1.2.0.dylib @executable_path/../Frameworks/libSDL-1.2.0.dylib meandmyshadow
关于如何将库包含到应用程序包中的更大的问题,您可以在上面使用安装名NAMEMAION/COD>进行手动操作,或者考虑自动为您做的尝试。您可以使用MacPorts安装它:
sudo-port-install-dylibbundler