C++ Win构建与MinGW构建之间的差异

C++ Win构建与MinGW构建之间的差异,c++,windows,gcc,c++11,mingw,C++,Windows,Gcc,C++11,Mingw,有人知道和的区别吗?我对C++11(14)Windows编译器非常感兴趣,但不幸的是,MSVC尚未完全兼容C++11。区别很简单:它们的目标略有不同 特别是,如果您想在Windows上开发(即不需要交叉编译),那么最好使用项目,该项目基本上提供了几种功能丰富的MinGW-w64工具链变体。链接中的表格很好地总结了我所说的功能。您基本上可以根据您的需求选择编译器,以寻址模型、线程模型、异常模型。我认为它是成熟和稳定的,因为我用它来做日常工作,我对质量非常满意。 另一方面,项目的主要目标似乎是交叉编

有人知道和的区别吗?我对C++11(14)Windows编译器非常感兴趣,但不幸的是,MSVC尚未完全兼容C++11。

区别很简单:它们的目标略有不同

特别是,如果您想在Windows上开发(即不需要交叉编译),那么最好使用项目,该项目基本上提供了几种功能丰富的MinGW-w64工具链变体。链接中的表格很好地总结了我所说的功能。您基本上可以根据您的需求选择编译器,以寻址模型、线程模型、异常模型。我认为它是成熟和稳定的,因为我用它来做日常工作,我对质量非常满意。 另一方面,项目的主要目标似乎是交叉编译。你会注意到,在他们的论文中的链接中,你也会注意到它的功能不如MinGW版本丰富,因此你对它的灵活性就比较低。与MinGW版本相比,它也相对较新,因此我希望它可能会遇到一些问题

注意:请理解,这两个项目都只是MinGW-w64工具链(支持x86和x64目标的Windows GCC端口)的构建(分布式即用二进制文件),上面的链接都指向该工具链的网站。它们只是为了方便用户而提供的,这样我们(用户)就不必为自己编译MinGW-w64工具链而烦恼,但是如果您有足够的经验并且知道自己想要什么,没有人会阻止您这么做

对于相关主题和C++11的进一步阅读,我推荐您可能会感兴趣的


好运。

你也可以考虑。对于我所知道的,在Windows窗体上不支持CLAN,它在Windows上还没有完全支持。有关当前状态,请参见:项目尝试使用MSVC-STL实现构建llvm和clang。也许最好允许libc++在没有msvc依赖项的情况下在Windows上构建。因此,我不太相信该项目,也没有提到一些具体的区别:(1)mingw builds已与mingw-w64合并,win builds是一个独立的参与方,(2)win builds包括一个包管理器
yypkg
(类似于
apt get
yum
),以添加多达62个使用win builds构建的附加包(3)mingw构建包括gfortran,这对于像我这样的数学/科学/工程类型可能很重要(例如构建BLAS和LAPACK需要gfortran),并且(4)win构建允许使用
切换工具链/opt/windows\u 64/bin/win构建开关64
/opt/windows_32/bin/win构建开关32
那么,呃,有什么区别?