Несколько вопросов:
Правильно ли понимать, что MinGW по сути берет исходный код gcc и компилирует его в исполняемый файл для Windows, то есть gcc.exe?
В вики MinGW сказано: «MinGW, с другой стороны, предоставляет функции, предоставляемые Win32 API». Это меня смущает. Разве установка Windows по умолчанию уже не предоставляет заголовки Win32 API, которые предоставляют Win32 API, что сделало бы MinGW, предоставляя его снова избыточным? Заголовки, которые предоставляет MinGW, отличаются от тех, которые поставляются с установкой Windows?
Когда у меня есть объектный файл, скомпилированный MinGW gcc, могу ли я просто связать его с библиотекой времени выполнения C в Windows? Я бы не подумал, потому что объектный файл, созданный MinGW gcc, может быть несовместим (например, использует те же соглашения о вызовах), что и библиотека времени выполнения C в Windows.