我克隆了linphone-桌面项目并遵循 README 和 README.macos 中提供的所有步骤林电话存储库安装所有依赖项,顺便说一下,我使用的是 MacPorts 2.3.4。
因此,在使用 --package 选项运行prepare.py 脚本后,我进行了编译错误。但问题是,当我运行不带 --package 选项的prepare.py 脚本并再次编译时,它工作得很好。
iTerm 的输出:
Install the project...
-- Install configuration: "Release"
Cannot find source to copy: /Users/pvaldivieso/Downloads/linphone-desktop/OUTPUT/lib/mediastreamer/plugins/*.*.dylib
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: can't open file: /Users/pvaldivieso/Downloads/linphone-desktop/WORK/PACKAGE/Linphone.app/Contents/MacOS/Linphone-bin (No such file or directory)
/usr/bin/patch: **** Can't find file /Users/pvaldivieso/Downloads/linphone-desktop/WORK/PACKAGE/Linphone.app/Contents/Resources/share/themes/Quartz/gtk-2.0/gtkrc : No such file or directory
pkgbuild: error: Component path "/Users/pvaldivieso/Downloads/linphone-desktop/WORK/PACKAGE/Linphone.app" does not exist.
[100%] Completed 'TARGET_linphone_package'
[100%] Built target TARGET_linphone_package
一路走到最后却失败了。我认为这与 mediastreamer 有关并且没有找到一些 .dylib 但我不确定。
我的问题是:如何生成Mac OS X的安装包?
答案1
好吧,我很久以前就设法解决了这个问题,但我忘记了这个问题,我正在发布答案,以防有人提出这个问题。
问题是 .dylib 文件丢失,并且 gtk-mac-bundler 使用的 XML 文件缺少一行,该行告诉捆绑器将这些 .dylib 文件放在 .app 中的何处。
所以,在我添加的文件中submodules/cmake-builder/configs/desktop/linphone_package/mac-bundler/linphone.bundle
:
<binary>
${prefix:linphone}/lib/*.dylib
</binary>
就这样。