MinGW,MinGW-w64和MinGW-builds有什么区别?

时间:2014-08-30 11:58:41

标签: c++ eclipse gcc c++11 mingw

MinGWMinGW-w64MinGW-builds之间有什么区别?

我应该使用哪一个在Windows 8机器上使用Eclipse IDE编译c ++ 11源代码?

2 个答案:

答案 0 :(得分:34)

MinGW是Windows的GCC端口。并非所有的Windows API都受支持(但是对于许多程序来说,支持的东西已经足够了)并且它仅适用于32位程序(通常也可以在64位Windows上运行,但有些不能,但是你不能将它们编译为64位)。

MinGW-w64是一个改进的版本,支持32位和64位,以及更多的WinAPI(仍然不是全部,因为它有很多工作,但比MinGW更多)。

MinGW-w64只提供源代码,但没有“只使用”编译器的二进制文件。

MinGW-builds是一个有点独立的项目,可以在最有用的配置中提供二进制文件。要获得专门构建的MinGW-w64,仍然可以进行手动编译。

如果不需要任何异常,使用MinGW-builds self-installer是最简单的方法。另请see here获取有关自我安装程序的帮助。

答案 1 :(得分:0)

Mingw将您的代码编译为在Windows下运行的Windows二进制文件(32位)。

Mingw-w64使得Linux二进制文件无法在Mingw-w64 shell之外的Windows中运行。

用于Linux的Windows子系统(WSL)也生成Linux二进制文件。看起来编译器和外壳程序与Mingw-w64相同。 WSL只是一个更完整的系统。您可以在WSL下安装其他Linux程序,除非需要图形界面。您可以从WSL访问Windows文件系统,反之亦然。

Cygwin使Windows二进制文件可以在Cygwin Shell之外的Windows下运行,只要您具有Cygwin DLL即可。这提供了一个与Windows完全兼容的类似Linux的环境。

我不知道Mingw版本。有人可以回答它产生什么样的二进制文件吗?

相关问题