win:dev:mingw
Содержание
MinGW & MSYS
- https://sourceforge.net/projects/mingw/ → mingw-get-setup.exe (0.6.2 - старая страница)
- https://osdn.net/projects/mingw/ → mingw-get-setup.exe (0.6.3 - новая страница/версия)
Установка
- Загрузите и запустите mingw-get-setup.exe
- Нажмите кнопку
Install
, а затем кнопкуContinue
- Дождитесь, когда кнопка
Continue
будет доступна - Нажмите кнопку
Continue
, а затем выберите пункты:Basic Setup
→mingw-developer-toolkit-bin
Basic Setup
→mingw32-base-bin
Basic Setup
→mingw32-gcc-g++-bin
All Packages
→mingw32-libz-dev
- Выберите в меню
Installation
→Apply Changes
- В новом окне нажмите на
Apply
, а затем наClose
- Закройте программу
MinGW Installation Manager
Использование
- msys_shell.bat
@echo off msys\1.0\msys.bat
Дополнительно
- OpenSSL:
- Запустите
C:\MinGW\msys\1.0\msys.bat
- Выполните следующие команды построчно:
wget -q --show-progress https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz tar -xvf openssl-1.0.2u.tar.gz && cd openssl-1.0.2u ./config && make
- Скопируйте папку
include\openssl
вC:\MinGW\include
- Скопируйте файлы
libcrypto.a
иlibssl.a
вC:\MinGW\lib
- Статическая линковка zlib:
- Удалить или переименовать
C:\MinGW\lib\libz.dll.a
или - Добавить
-static
в началоLDFLAGS
внутриMakefile
Обновление
- Запустите
C:\MinGW\libexec\mingw-get\guimain.exe
- Выберите в меню
Installation
→Mark All Upgrades
- Выберите в меню
Installation
→Apply Changes
- В новом окне нажмите на
Apply
, а затем наClose
- Закройте программу
MinGW Installation Manager
Очистка кэша
- Удалите все файлы из папки
C:\MinGW\var\cache\mingw-get\packages
Компиляция (MinGW)
- Сборка через make/makefile
- mingw32-make.bat
@echo off path=C:\MinGW\bin;C:\MinGW\msys\1.0\bin mingw32-make.exe pause
- Очистка через make/makefile
- mingw32-clean.bat
@echo off path=C:\MinGW\bin;C:\MinGW\msys\1.0\bin mingw32-make.exe clean pause
- Сборка через gcc/program.c
- gcc-make.bat
@echo off path=C:\MinGW\bin;C:\MinGW\msys\1.0\bin if "%1" neq "" ( echo "%~nx1" gcc.exe -static -O2 -s -o "%~dpn1.exe" "%1" strip.exe -s "%~dpn1.exe" ) pause
Hello World
- program.bat
@echo off path=C:\Dev\SDK\mingw\bin;C:\Dev\SDK\mingw\msys\1.0\bin if not exist %~n0.exe ( gcc.exe -static -O2 -s -o %~n0.exe %~n0.c strip.exe -s %~n0.exe ) if exist %~n0.exe ( file %~n0.exe ldd %~n0.exe %~n0.exe ) pause
Удаление
- Удалите папку
C:\MinGW
win/dev/mingw.txt · Последнее изменение: 2024.03.27 19:04:03 — admin