Ну, GCC - это GCC. Производительность одинакова для разных ОС, за исключением различий ABI и C stdlib, которые могут повлиять на производительность.
Эту проблему легко решить, везде использовать GCC, то есть MinGW, или более новую версию mingw-w64 (включает 32- и 64-битные возможности компиляции). Он предоставляет все (большинство, то есть 99,9%) Win32 API, когда вам это нужно.
Обратите внимание, что, хотя это один и тот же компилятор, ABI отличается, скажем, Windows x64 от Linux x64 (в данном случае: размер long
), и вы должны убедиться, что код компилируется и работает на всех платформах, которые вы намереваетесь цель, регулярно.
Использование GCC с -pedantic-errors -Wall -Wextra
- хорошая помощь для этого (если вы отключите все предупреждения!), Но не идеально.
Компилятор Intel принесет лучшую производительность, но он бесплатен только для личного использования в Linux (вы не можете распространять двоичные файлы, созданные бесплатной версией, если я правильно помню), так что если вам нужны бесплатные инструменты, то этого нет. Visual C отстой в C99. Это компилятор C89, и он скоро не изменится.
Большинство инструментов разработки также доступны в Windows, см., Например, msysgit и vim .