ТехноСаратов → Блог

Установка MinGW и MSYSБлогПрограммирование

Multitoolbox — новый сайт от создателей этого поратала

Сегодня установил этот островок родины (UNIX – родина всех программистов на Си) и… решил поделиться опытом. В частности по тому, что думаю и в дальнейшем развивать тему программирования под UNIX на Си и переноса программ в Windows.

Первым делом будем качать все необходимое, а потом инсталлить, чтобы не запутаться.

#0. Закачка

собственно компиляторы Си и Си++:
gcc-core-3.4.5-20060117-3.tar.gz
gcc-g++-3.4.5-20060117-3.tar.gz

GNU Binutils:
binutils-2.18.50-20080109-2.tar.gz

MinGW Runtime:
mingwrt-3.15.1-mingw32-dll.tar.gz
mingwrt-3.15.1-mingw32-dev.tar.gz

Библиотеки и заголовочные файлы венды — Win32 API:
w32api-3.12-mingw32-dev.tar.gz

Если нужно, качаем пакеты других языков:
gcc-g77-3.4.5-20060117-3.tar.gz – фортран
gcc-ada-3.4.5-20060117-3.tar.gz — Ада
gcc-java-3.4.5-20060117-3.tar.gz — Java
gcc-objc-3.4.5-20060117-3.tar.gz — ObjectiveC

Теперь переходим к закачке MSYS пакетов.

MSYS-1.0.10.exe — Собственно MSYS
MSYS DTK 1.0 — Developer Tool Kit
MSYS Core 1.0.11 — обновление MSYS.

#1. Установка

MinGW устанавливается простым копированием содержимого архивов в созданную вами директорию C:MinGW, или любую другую (мне например не нравится создавать папки прямо в корне, но я все равно так делаю 🙂 ). И так, распаковываем прямо в C:MinGW следующие архивы:

gcc-core-3.4.5-20060117-3.tar.gz
gcc-g++-3.4.5-20060117-3.tar.gz
binutils-2.18.50-20080109-2.tar.gz
mingwrt-3.15-mingw32-dev.tar.gz
mingwrt-3.15-mingw32-dll.tar.gz
w32api-3.12-mingw32-dev.tar.gz

Собственно компилятор установлен. Теперь дописываем к переменной окружения PATH путь до бинарников компилятора C:MinGWbin. Для этого открываем «Панель управления – Система – Дополнительно – Переменные среды». Чтобы проверить правильность внесенных изменений вызываем cmd и пишем команду gcc, если ответ – «gcc: no input files», значит все нормально.

Следующим шагом устанавливаем MSYS. Создаем директорию C:MSYS и запускаем скаченный файл установки MSYS-1.0.10.exe. Инсталлятор попросит установиться в C:msys1.0, разрешаем. После копирования файлов вылезет консольное окошко, которое спросит установлен ли MinGW и где он располагается. В ответ на запрос пути нужно написать “c:/mingw”.

Далее запускаем инсталлятор msysDTK-1.0.1.exe, который вообще вопросов не задает, просто тупо копирует все что нужно.

Обновляем MSYS до версии 1.0.11 распаковав msysCORE-1.0.11-2007.01.19-1.tar.bz2 в C:MSYS1.0, с заменой всех файлов.

Фух! Все скопировали и теперь осталась самая малость – отредактировать конфигурационный файл C:MSYS1.0etcprofile. Вставляем в начале файла строчки:

Последняя строка содержит флаги передаваемые компилятору, и вы можете редактировать ее в соответствии со своими потребностями.

Ниже в файле находим сроку:

И изменяем ее следующим образом:

То есть добавляем к экспортируемым только что созданные нами переменные.

Ну вот практически и все. Запускаем C:MSYS1.0msys.bat, или щелкаем по иконке на рабочем столе.

Хм… Последний штрих. Шрифт консоли получился слишком мелкий. Правим его! В C:MSYS1.0msys.bat находим строчку:

И заменяем в ней Courier-12 на Courier-16, например. Перезапускаем MSYS и наслаждаемся своим островком UNIX!

Проверим, что у нас получилось. Создадим в каталоге “C:MSYS1.0home” файл с простой программкой “hello world” и откомпилируем ее командой:

В результате получился файл a.exe. Ура!