Запуск программы на С в Windows

Если вы читали предыдущий материал и делали как там описано, вы могли заметить, что хоть программа и работает при запуске из среды выполнения POSIX программ, но не работает если её запустить напрямую из Windows.
Связано это с тем, что gcc компилирует EXE-файл динамически линкованный. Т.е. библиотеки используемые для его работы будут браться из системы. Чтобы такого не происходило gcc запускают с параметром -static для статичной линковки программы и тогда . Однако наша среда эмуляции POSIX — MSys2 и тут подложила свинью, и в терминале запускаемом по умолчанию даже при указании этой опции файл будет неработоспособен в среде Windows, так как будет требовать библиотеку msys-2.dll
Поэтому в этой записи я расскажу как скомпилировать программу чтобы её можно было использовать в Windows напрямую. Читать далее