在Linux上开发Windows应用程序?

cub*_*ube 13 linux windows installer wxwidgets cross-platform

我的主要操作系统是Linux,但现在我不得不为Windows编写一些C++应用程序.我正在考虑使用像WxWidgets这样的跨平台库(有些关心其他平台依赖项)在Linux机器上进行开发,然后将结果交叉编译为mingw目标.

所以我正在考虑使用的工具是

  • g ++用于编译和交叉编译.
  • CMake的
  • wxWidgets的
  • ??? 用于制作Windows安装程序包
  • 用于测试Windows版本的葡萄酒

我的问题是:

  1. 什么是一些免费的(甚至更好的开源)Windows安装程序,我可能会用它来创建最终的包?如果可以从Linux编写软件包,将会有所帮助.

  2. 是考不上的交叉编译版本(所有的逻辑在Linux版本的测试之后)?

  3. 这是一个好主意吗?:-)

Ray*_*Ray 15

检查Qt.这是一个非常丰富的跨平台框架.

至于安装人员,我强烈推荐使用WiX.

对于测试,使用某种类型的虚拟化(如Sun Microsystems的VirtualBox)要好得多.我相信您可以使用Windows或Windows 7 RC的试用版,可以在2010年3月之前免费使用.


Art*_*yom 5

首先,是的,这是个好主意。我有几个项目以这种方式维护它们的 Windows 版本。

无论如何,我建议您在 Windows 机器上测试最终产品。如果您拥有 Windows 操作系统的许可证,则可以使用虚拟化进行最终测试。

我建议使用Autotools,它具有非常好的交叉编译支持,并且可以与交叉编译器“本地”工作。

例如在 Debian 下运行

./configure --host=i586-mingw32msvc
Run Code Online (Sandbox Code Playgroud)

这将创建正确的交叉编译 makefile,就像这是 Unix 项目一样。

在任何情况下,我都会建议通过交叉编译它们来开发跨平台版本和使用 Wine/Windows 不时测试本机 Windows 版本。