【发布时间】:2019-12-11 08:39:29
【问题描述】:
最近我一直致力于使用 Visual C++ 2017 和 SDL2 创建游戏。我想让所有不同类型的系统上的用户都能访问我的游戏,而不仅仅是 Windows。我试着让我的游戏也可以在 Mac OS 上使用,但我想不出任何方法来做到这一点。我认为最好的方法是让 Visual Studio 将我的代码编译成像“.APP”而不是“.EXE”这样的文件类型,因为我没有任何形式的 Mac 或 Apple 计算机可以使用创建的软件适用于 Mac 的应用程序。但是,我无法弄清楚如何更改 Visual Studio 中的选项以将代码编译为不同的文件类型,或者即使这样做是可能的。
我在整个互联网上搜索了将“.EXE”转换为其他文件类型的方法,使用不同的 C++ 编译器编译成 Mac 兼容的文件等,但我找不到任何有效的方法不需要虚拟机或物理 Mac 计算机(我都没有尝试过,因为这需要很多努力,我想要一个更简单的解决方案)。
如果有人能告诉我如何更改 Visual Studio 将您的代码编译成的文件类型,或者他们是否可以建议在 Windows 上工作、与 SDL2 兼容并且可以将 C++ 代码编译成可以工作的文件类型的不同编译器在像“.APP”这样的Mac电脑上,这可以解决我的问题。提前谢谢!
【问题讨论】:
-
几乎肯定行不通。围绕解决这个确切问题构建了完整的系统。我可以建议从像“Unity”这样的环境重新开始吗?请注意,Microsoft 可能会告诉您它可以完成 - 但您必须使用一组非常特定的库 - 足够严格,您可能应该选择不同的开发环境。
-
虽然 CLANG 和 gcc 在某种程度上都可以为其他平台构建,但我将在“本机跨平台”工具/语言...单元或 Java 上进行第二次开发。我最喜欢 C++,但根据我的经验,C++ 中的跨平台实际上只有在访问本机硬件时才实用。
-
Can I program for Macs without owning one? 的可能重复项(但只是一个可能的重复项,因为该问题针对的是 VS2010 而不是 VS2017。鉴于该问题是在 2017 年之前提出的,因此不确定该细节的相关性。)跨度>
标签: c++ macos visual-studio visual-studio-2017 cross-compiling