There is a library for helping with things like opening a window, rendering to it, playing audio and handling events, called SDL2.
Their download page has two separate links for downloading the development library:
(+) One for (Visual C++ 32/64-bit)
(+) Another for (MinGW 32/64-bit)
Why are these versions specific to a particular compiler? Are the object files of the library specific to a compiler? Why would that be?
Are the object files of the library specific to a compiler?
Yes, each compiler has its own format for libraries. To make it worse you need to have different libs for different versions. For example VS2017 probably can't use libs from VS2019 or older ones.
The MinGW has the Linux style lib files and the VS has the MS style lib files. Also MInGW has makefie install files which the VS version doesn't. There might also be some source differences as well. Some libraries are different on Linux (MinGW) to VS.
Different compiler systems push the sand around differently.
Please accept this as your answer, as I have no interest in taking you down the rabbit hole. Sorry.
If you really want to know more, you'll have to either find someone who wants to spend the time and energy to try to explain things to you or just dig deep on your own and learn it over time like the rest of us.
Sorry to be so blunt.
[edit] The end result is you generally don't have to care. Just choose the one for your compiler and have fun!