我开发了一个C ++ / QT应用程序,我正在尝试为Mac,Windows和Linux编译它。我之所以选择C ++,是因为我可以使它与这些主要的操作系统兼容。我可以为Mac编译它。
我发现了Cross Compiling,但有些已经过时或没有很好的文档记录......或者不保证它们可以在最新版本的Windows或Mac上运行。
我的机器上安装了虚拟Windows和Cent操作系统,但我觉得手动编译应用程序会过度杀死。
那么,您推荐任何可靠的交叉编译器吗?或者有没有办法自动编译,所以如果必须,可以通过登录我的虚拟Windows或Cent OS安装进行编译?
仅供参考...不仅可以交叉编译,还可以生成32位和64位版本!
答案 0 :(得分:1)
对于Mac和Linux,如果在操作系统中安装了g ++编译器,那么这里没有大问题。但是您需要在Windows安装中安装Mingw或cygwin来为您的程序提供gcc和g ++编译器,如果您想自动编译过程,可以使用Makefile或尝试查看autotools。
答案 1 :(得分:1)
我所知道的唯一交叉编译器是GCC。我实际上已经在Linux上使用它来反复编译S / 390,并且还在Power Mac上交叉编译ARM代码(我使用the instructions here进行设置)。
那就是说,我认为你想要的是在运行Windows的32位虚拟机上交叉编译Windows x64。如果是这样的话你很幸运,因为微软实际上从Windows 2000 SDK开始就免费提供了使用Windows SDK的交叉编译器。我实际上在运行XP的Virtual PC上使用Windows Vista SDK(版本6.1)来编译Windows x64。 Here您可以下载编译器附带的最新版本的SDK。我查看了系统要求,它仍然支持XP,所以这应该对你有好处。
请注意,编译器与Visual Studio一样,但您必须使用'cl'或从SDK安装的命令行环境调用它们。 'NMAKE'强>
您可以通过为32位发出 SETENV / x86 或为64位发出 SETENV / x64 来选择编译模式 - Itanium的另一种模式但我从未使用过它-。 Visual Studio IDE不包含在内,因为它是付费产品,但免费的高质量编译器对任何人都足够好。