我正在使用 CPack 为 OSX 构建一个小包。在 CPack wiki 中,它说我必须指定一个
Info.plist
文件,否则 make package
将失败。
CPACK_BUNDLE_PLIST - path to a file that will become the bundle plist.
但是here它说有一种方法可以自动生成
Info.plist
文件。任何人都可以如何使用它吗?现在我正在使用一个空的Info.plist
文件,它似乎正在工作,但不确定将来会因为这个而破坏什么。
我认为您将
MACOSX_BUNDLE
与 CPACK_BUNDLE
混淆了。 这里是差异的解释
因此重要提示:不要在将使用捆绑包生成器打包的可执行文件上使用 MACOSX_BUNDLE 属性!指定 MACOSX_BUNDLE 在构建时为每个单独的可执行文件创建一个单独的包;当捆绑包生成器将多个可执行文件合并到一个捆绑包中时,这些捆绑包的结构变得多余。
MACOSX_BUNDLE
确实会自动生成
Info.plist
,而
CPACK_BUNDLE
需要在
CPACK_BUNDLE_PLIST
中指定一个。为了回答您关于指定什么
Info.plist
的问题,最好使用一个不为空的简单基本
Info.plist
,类似于此处指定的:https://stackoverflow.com/a/6323462/369009