Сборка программ, которые запускаются без дополнительных dll MinGW и MSYS

Я создаю некоторые программы fortran с помощью gfortran под MinGW и MSYS на моей Windows 7. Но когда я запускаю их на других компьютерах, на которых не установлены MinGW и MSYS, система всегда запрашивает некоторые библиотеки DLL, такие как libgfortran-3.dll или libgcc_s_dw2-1 .dll.

Я хочу спросить, есть ли способ создавать программы, которые работают без дополнительных dll MinGW и MSYS. Я слышал, что для пользователей cygwin есть опция «-mno-cygwin», которая заставляет программы работать без cygwin1.dll. Есть ли аналогичный вариант для MinGW и MSYS?


person user1397974    schedule 16.05.2012    source источник


Ответы (2)


Проект MinGW-w64 будет создавать 32-разрядные и 64-разрядные приложения, которые статичны.

То есть они не требуют внешних dll.

person Steven Penny    schedule 08.08.2012
comment
+1 за краткий ответ там, где одного достаточно. :) (и, то же самое @ user2348979: D) - person shelleybutterfly; 13.05.2014

Вы можете установить MinGW-w64 с помощью установки Cygwin и использовать параметр командной строки -static, чтобы избежать зависимости от libgfortran-3.dll. Например.

i686-w64-mingw32-gfortran -o hello.exe -Wall -static hello.f
person 0xF    schedule 23.10.2016