2

是否可以在Windows上开发跨平台应用程序,还可以从Windows编译为Mac OS X?我检查过Qt,但需要使用Xcode从Mac进行编译。Windows上的Mac编译器

回答

1

如果这是您的优先级,那么一个选项将是Java,因为在一个平台上构建的至少一个jar文件可以在另一个平台上运行。

然而,如果你在谈论C或C++ ...

如果要创建一个小的命令行工具,那么你可能能够使用gcc和一个交叉编译器这个工作,但我认为这将是很多工作。

如果你想要创建一个GUI应用程序,我会敦促你现在放弃。有很多问题 - 您必须使用Carbon或Cocoa API,这些API不能在任何其他平台上构建,您必须链接到编译主机上不存在的框架,否则不会能够轻松生成.plist文件。 Qt不会帮助您,因为您需要能够构建它,它依赖于这些相同的框架。

简而言之,除了在实际的Mac上构建外,别无选择。此外,当涉及修复错误时,您绝对必须在mac(物理或虚拟)上执行此操作。

+0

感谢您的详细回复。我也在想,不是为跨平台创建基于GUI的应用程序,而是以平台本地语言来开发它。我已经检查了一些跨平台的框架Qt,Mono;都需要在Mac上进行编译,而且他们还有许多已知问题,我认为在开发之后这些问题将很难处理。 – codelearner 2012-08-03 12:58:14

+0

是否有任何托管解决方案提供在线的mac os系统,所以我可以虚拟地使用xcode或任何其他类似的解决方案来虚拟使用xcode? – codelearner 2012-08-03 12:59:01

+0

不是我所知道的。可以在虚拟机上运行Mac OS,但AFAIK违反OSX许可条款。如果你真的需要为OSX构建,那么真的只能买一台Mac。如果您无法访问物理机器,那么安装时会遇到各种问题,以及不同操作系统版本的兼容性问题等,这些问题是无法应对的。 – 2012-08-03 14:00:00

0

从我所知道的情况来看,通常你需要一个mac来制作可执行文件,即使是一个简单的ansi c程序,你也需要gcc for mac。

0

您可以创建MacPortsPortfile。(如果你的应用程序是开源的)

一个MacPorts的端口是包含在Portfile 定义应用程序,其特征一套规范,以及任何文件或 安装它需要特殊说明。这允许您使用单一命令 告诉MacPorts自动下载,编译, 并安装应用程序和库。

看看IMCROSS

IMCROSS是在Linux上安装交叉编译器和 交叉编译库的简单脚本方法(或其他可能的* nix中)系统, 这样就可以制定有针对性的在Microsoft Windows 运行程序和Mac OS X在同一时间和在相同的环境中,您开发这些程序的Linux版本。

+0

谢谢,我会详细检查它们。 – codelearner 2012-08-03 13:28:43

0

您当然可以使用Real Studio来做到这一点。它可以在Windows上创建Mac OS X应用程序,而不会出现任何问题。

它交叉编译的Windows,OS X和Linux。它可以从任何平台上完成。它也可以创建Web应用程序。

听起来像你应该检查出来。