Search results
MinGW tries to implement a native way to compile C++ on Windows but it doesn't support some features like mutex and threads. We have the MinGW-W64 that is a fork of MinGW that supports those features and I was wondering, which one to use? Knowing that GCC is one of the most used C++ compilers.
MSVC is fine if you are actually targeting Windows; MSVC is not nearly as bad as some here would have you believe. A fine reason to stick with GCC / Clang is if you really can't be bothered learning how to use Microsoft their tools.
MinGW is just one port of GCC to Windows, it's not the only port. Another good compiler is Clang, which is part of LLVM. It has better Windows support than GCC does these days, because it can link to code compiled using MSVC. This is important if you're using third-party libraries.
Should I use MinGW or MSVC? MSVC is doing the compilation job significantly faster than MinGW-w64. The DLL sizes are comparable, if optimization is set to "-O2" for MinGW-w64, with "-O3" the DLLs from MinGW-w64 are larger.
G++ is the gnu C++ compiler. It is availible on mac (iirc) and linux and ported to windows as part of MinGW. (minimal gnu for windows). The complementary C compiler is called GCC. "gpp" is presumably some alias for a g++ with certain predefined command line arguments. MSVC is microsofts compiler.
Mingw-w64 is a free and open-source suite of development tools that generate Portable Executable (PE) binaries for Microsoft Windows. It was forked in 2005–2010 from MinGW ( Minimalist GNU for Windows ).
People also ask
What's the difference between MinGW and MSVC?
Is MinGW better than GCC?
What is the difference between G++ and MSVC?
What's the difference between MinGW-w64 & MinGW-builds?
What is the difference between LLVM and MinGW?
What is the difference between GCC and MSVC?
MinGW links by default to the Windows OS component library MSVCRT, which is the C library that Visual C++ version 6.0 linked to (the initial target was CRTDLL), which was released in 1998 and therefore does not include support for C99 features, or even all of C89.