问题描述
我如何将我的 c++ 代码构建到一个 dmg 文件而不是一个 exe 文件,这是它总是构建到的。我试图让我的程序可供 mac 用户使用,但我找不到答案
解决方法
首先,Mac 上的 .dmg 不是可执行文件。它实际上是一个包含可执行文件的打包工具。如果您有 GUI,那么您真正需要生成的是 .app。如果它只是一个命令行工具,那么它就是一个二进制文件,就像在 Unix 上一样。请记住,OSX 非常类似于 UNIX。
我在 Google 上搜索了“在 windows for mac 上交叉编译”。谷歌给了我一堆相反的链接,但如果你仔细阅读,你可能会发现一些有用的东西。根据您正在构建的内容,这很有趣:
https://metricpanda.com/rival-fortress-update-11-cross-compiling-for-three-platforms/
但是,如果您正在尝试编写 GUI,您几乎肯定需要链接特定于 Mac 的库,而您没有这些库。
如果您切换到 Qt 作为您的构建环境,您可能能够进行交叉编译。我没试过。
不过,如果我要这样做,我会在 Mac 上构建。无论如何,您必须进行测试,对吗?