MinGW-w32与MinGW的区别

30
什么是MinGW项目和MinGW-w64项目的32位部分之间的区别? MinGW-w64的32位部分是否与x64有任何关系?它们的编译器似乎做完全相同的事情...
4个回答

20

13

1
此外,“尽管名字叫做MinGW-w64,但它既可以在32位Windows上运行和构建二进制文件,也可以在64位Windows上运行和构建二进制文件,但您需要根据您正在运行的平台以及您想要针对哪个平台下载正确的软件包。”(强调我的)http://ascend4.org/Setting_up_a_MinGW-w64_build_environment#MinGW-w64 - Evgeni Sergeev

7
一种看起来像是“交叉编译”,从64位到32位,而另一种则是本机编译。
不过这只是一个快速的了解,并且可能离正确很远......
编辑:这只是部分正确的。更好的解释可以在这里找到。

@Ben:这正是我所想的(从32位到64位),但实际上,当你尝试在MinGW-w64中使用-m32编译时,它会显示“抱歉,不支持32位编译”。:( - user541686
当您构建mingw时,可能需要使用32位扩展进行构建。当然,您很可能没有构建MinGW,因此获得的是原始版本(即64位)。他们很可能建议使用MinGW进行32位构建,因此不会添加额外的选项(如-m32),除非您自己这样做。 - Ben Stott
1
@Ben:我有点困惑……有MinGW、MinGW-w32和MinGW-w64。最后一个不能交叉编译32位,前两个不能交叉编译64位。我不确定我理解你的意思,但我的问题是第一和第二个之间是否有区别。 - user541686
1
@Ben:嗯...你具体指的是FAQ的哪一部分? - user541686
1
实际上,http://openfoamwiki.net/index.php/Tip_Cross_Compiling_OpenFOAM_in_Linux_For_Windows_with_MinGW#Differences_between_mingw32_and_mingw-w32_versions 提供了更好的解释!我已经更新了我的答案,包括这个链接。 - Ben Stott
显示剩余2条评论

6
这个问题在MinGW文章的维基百科讨论页面中有一些见解。基本上,MinGW-w64项目是MinGW源代码的一个分支。我找到的关于为什么出现了这个分支的详细信息很少(尽管这个邮件列表帖子这个反驳帖子暗示了它是某种类型的开源政治),或者两个项目之间的后续差异。
初步看来,它们是相同的;差异将在随后的开发中体现。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接