MinGW vs MSVC: Difference between revisions

From Strawberry Music Player Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
For Windows, Strawberry provides two different versions, MinGW and MSVC. These are compiled using two different compilers.
For Windows, Strawberry provides two different versions, MinGW and MSVC.


Unlike previous versions, the MinGW and MSVC now has all the same features, so it does not matter much which one you use.
It's basically two different builds using different compilers, MSVC is Microsoft Visual C++ while the other one is from a free software project called GNU ported to Windows.


Both releases features the latest versions of all libraries compiled by the Strawberry project.
Both releases use the current latest versions of libraries such as Qt, OpenSSL, Glib and GStreamer.
It always uses the latest versions of Qt 6, OpenSSL 3, Glib 2 and GStreamer.




Line 21: Line 20:
https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#latest-microsoft-visual-c-redistributable-version
https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#latest-microsoft-visual-c-redistributable-version
Usually it's automatically installed through the Strawberry installer, but it won't be installed automatically if you already have the Visual C++ runtime, and an older version might cause instability.
Usually it's automatically installed through the Strawberry installer, but it won't be installed automatically if you already have the Visual C++ runtime, and an older version might cause instability.


== MinGW-W64 - Minimal GCC for Windows ==
== MinGW-W64 - Minimal GCC for Windows ==

Revision as of 22:38, 21 September 2024

For Windows, Strawberry provides two different versions, MinGW and MSVC.

It's basically two different builds using different compilers, MSVC is Microsoft Visual C++ while the other one is from a free software project called GNU ported to Windows.

Both releases use the current latest versions of libraries such as Qt, OpenSSL, Glib and GStreamer.


MSVC - Microsoft Visual C++

MSVC is Microsoft Visual C++, a proprietary compiler by Microsoft.

  • Requires Microsoft Visual C++ runtime (redistributable).
  • Has GStreamer WASAPI2 support.
  • Has experimental ASIO support.
  • Has Spotify support.
  • More unlikely to be picked up by anti-virus software as false-positive.

When using the MSVC version, always make sure you have up-to-date Visual C++ runtime (Microsoft Visual C++ Redistributable). If not, Strawberry will crash on start, or can crash later in the program. You get get the latest version here: https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#latest-microsoft-visual-c-redistributable-version Usually it's automatically installed through the Strawberry installer, but it won't be installed automatically if you already have the Visual C++ runtime, and an older version might cause instability.


MinGW-W64 - Minimal GCC for Windows

MinGW is a port of GCC to Windows. GCC is a free compiler by the GNU Project, usually found on all major Linux distributions.

  • More likely to be picked up by anti-virus software as false-positive.
  • Debug versions of the setups are available and includes the GDB debugger.


None of them currently has device and CD-support.