I'm not sure how limited I am using a compiler like mingw-w64. The main reason I decided on using it was to support Linux as well. I'm aware some API calls might change depending on the OS. |
You could try to learn cmake next.
https://cmake.org/ cmake creates makefiles and/or IDE projects from a file called CMakeLists.txt. This lets a developer pick whatever IDE/text editor setup and compilers that they prefer for building your project. If only certain compilers can build your code, that is something you would mention in a readme file explaining how to invoke cmake.
When compiling on Windows you can run cmake-gui and use Visual Studio projects to develop the code.
When compiling on Linux you can run cmake at the command line to generate unix makefiles to develop the code.
- Is multi-threading supported when compiling with mingw-w64? (still learning...) |
I know that TDM-GCC has builtin support of OpenMP if you check that option during installation. TDM-GCC is a derivative of MinGW-w64.
http://tdm-gcc.tdragon.net/
- Is Game development with such a compiler even recommended or should I stick to msvc when targeting Windows? If so, can I continue using msvc on vim instead of the bloated Visual Studio? Hopefully I can stick to mingw-w64. |
Yes, you can. Simply run the visual studio vars batch file before starting vim, and you should have access to the msvc compiler tools such as nmake and cl. You could also just start it from the visual studio command prompt
http://stackoverflow.com/a/18792893/2607949 That is probably the safer way of ensuring the proper environment variables.
- Would the executable g++ is building run on another Windows computer without the user having to install mingw-w64? |
Not without statically linking a few libraries. MinGW for whatever reason decided not to do that linking by default. TDM-GCC did however, so you could simply switch compilers. It is still MinGW based, so there are not any compatibility problems that I am aware of. TDM-GCC has just proven to me that it is far more convenient with sensible defaults.
Also, if you find yourself wanting to uninstall MinGW completely, GnuWin32 Packages is a great source for getting back all of the unixy commands that MinGW comes with.
http://gnuwin32.sourceforge.net/packages.html