Установка MinGW/MSYS да отрегулирование окружения к разработчика

Наверное, многие разработчики сталкивались не без; проблемой выбора или — или создания окружения для того программирования. На моего взгляд, бесплатное опоясывание сверху основе порта компилятора gcc (MinGW) да какая-нибудь IDE, совместимая от ним — как никогда приемлемый выбор.
В этой статье пишущий эти строки рассмотрю установку компилятора, его интеграцию не без; интегрированной средой разработки, его настройку, установку равно компиляцию сторонних библиотек. Рассмотрю некоторые люди полезные утилиты к облегчения сборки исходного заключение да системы контроля версий файлов.
Статья со временем короче обновляться равным образом дополняться.


MinGW/MSYS да QtCreator

Данный мануал создавался вместе с целью оказываться пособием равным образом заметкой в целях разработчиков, помочь им сосредоточить равно настроить собственное опоясывание к разработки нативных приложений во семействе OS Windows.

Содержание:

0. Установка равно наладка тулчейна MinGW/MSYS равно дополнительного ПО
0.1. Устанавливаем MinGW, оболочку MSYS равно настраиваем обкладка
0.2. Настройка MinGW/MSYS: используем продвинутую консоль, где бы msys.bat
0.3. Компиляция да блок pkg-config
0.4. Установка CMake, упражнения использования
0.5. Установка Subversion (svn)
0.6. Компиляция да набор git
0. Компиляция равным образом сборка библиотек на тулчейн MinGW
0.1. Компиляция да регулирование библиотеки FreeGLUT
0.2. Компиляция да сборка библиотеки GLUT
0.3. Компиляция равно узел библиотек SDL-окружения
0.3.1. Компиляция равно узел центральный библиотеки SDL
0.3.2. Компиляция да сборка библиотеки SDL_image
0.3.3. Компиляция да сборка библиотеки SDL_net
0.3.4. Компиляция да набор библиотеки SDL_gfx
0.3.5. Компиляция равно схема библиотеки SDL_ttf 0.0
0.3.6. Компиляция равным образом сборка библиотеки SDL_mixer
0.3.7. Компиляция равно настройка библиотеки SDL_sound
0.3.8. Компиляция равно схема библиотеки SDL_draw
0.3.9. Компиляция да монтаж библиотеки SDL_console
0.4. Компиляция равным образом регулирование zlib библиотеки
0.5. Компиляция да узел JPEG библиотеки
0.6. Компиляция равным образом набор PNG библиотеки
0.7. Компиляция да регулировка TIFF библиотек
0.8. Компиляция да блок библиотеки FreeType 0
0.9. Компиляция равным образом монтаж OGG библиотеки
0.10. Компиляция да блок OggVorbis (libVorbis) библиотеки
0.11. Компиляция равно настройка FLAC библиотеки
0.12. Компиляция да прибор библиотеки MikMod
0.13. Компиляция равным образом регулирование библиотеки MAD (libmad)
0.14. Компиляция да настройка библиотеки OpenAL
0.15. Компиляция да узел библиотеки ALUT (freealut)
0.16. Компиляция равным образом прибор cURL (libcurl) библиотеки
0.17. Компиляция равным образом настройка библиотеки libmodplug
0.18. Компиляция равным образом настройка библиотеки да утилит OpenSSL
0.19. Компиляция равным образом узел библиотеки Expat
0.20. Компиляция равно сборка библиотеки ZZIPlib
0. Интеграция MinGW вместе с IDE

0. Установка равно отладка тулчейна MinGW/MSYS да дополнительного ПО

Давайте разберемся, почто такое MinGW, а что такое? такое MSYS да про аюшки? они нужны.

MinGW — купюра через «Minimalist GNU for Windows», по мнению своей сути MinGW является куцый равно лаконичной средой разработки нативных приложений интересах семейства OS Microsoft Windows.
MinGW предоставляет невозмутимый подборка Open Source инструментов чтобы программирования, тот или другой идет пользу кого разработки нативного Windows приложения, которое безграмотный хорош быть во власти с C-Runtime библиотек каких-либо третьих сторон.
MinGW поддерживает идею минимализма, почему дьявол вовеки невыгодный достаточно сполна покровительствовать среду исполнения POSIX, про развертывания POSIX приложений в Windows, про их полной поддержки существует Cygwin . В первую каскад MinGW предназначен про использования разработчиками, которые привыкли мучиться от компилятором gcc.
MinGW содержит во себя:

  • Порт GNU Compiler Collection (GCC), тот или иной заключает на себя компиляторы таких языков, как: C, C++, ADA да Fortran.
  • Порт GNU Binutils на Windows (as, ld, ar)
  • Консольный монтер (mingw-get) пользу кого MinGW равным образом MSYS
  • Графический уставщик (mingw-get-inst)

MSYS — купюра через «Minimal SYStem», сие морские ворота командной оболочки Bourne Shell (sh) для того Windows. Он предлагается на качестве альтернативы «cmd.exe» через Microsoft’а. Оболочка недурственно идет ради портирования существующих приложений равно библиотек, которые глотать на *nix системах равно заключает на себя незначительный запас портов инструментов Unix, облегчающих задачу портирования.

Комбинация MinGW равным образом MSYS предоставляет разработчикам небольшую независимую среду, которая может существовать подумаешь загружена сверху съемные носители, неграмотный требуя добавления записей во файлы реестра.
Полезные ссылки:
Официальный сайт MinGW
Вики по части MinGW [ENG]

< < Перейти ко содержанию

0.1. Устанавливаем MinGW, оболочку MSYS равно настраиваем среда

0.1.1. Скачиваем парадный онлайн-установщик MinGW, в известный одну секунду последняя издание установщика 00120426: mingw-get-inst-latest.exe
Запускаем установщик, нажимаем «Next», «Next», выбираем «Use pre-packaged repository catalogues»:


Установка тулчейна MinGW/MSYS

Жмем «Next» равно соглашаемся вместе с лицензией, опять-таки «Next», равным образом в настоящий момент выбираем стезя про установки:


Установка тулчейна MinGW/MSYS

Рекомендуется подбирать колея минус пробелов, отпустило сумме указывать MinGW на причина диска, т.е во «C:\MinGW». Я выбрал «C:\Qt\MinGW», таково удобнее склифосовский включить MinGW ко IDE QtCreator. Если вас планируете после этого сплавить нестандартный тулчейн во какую-нибуть IDE, сделайте манером равным образом нажмите «Next». Необходимость наличия группы ярлыков во карта «Пуск» — по части вашему желанию. Но не грех далеко не творить (отметив галочкой «Don’t create a Start Menu folder) да расстараться «Next».

Выбираем следующие пакеты:

  • C Compiler
  • C++ Compiler
  • MSYS Basic System
  • MinGW Developer ToolKit

равно жмем «Next»


Установка тулчейна MinGW/MSYS

после подтверждаем установку выбранных пакетов кнопкой «Install».
Откроется консольное окно, на котором бросьте фиксироваться движение скачивания равно установки пакетов. Проследите, в надежде эксплуатация выполнялся вне ошибок (например, неравно будут недоступны сервера репозитория, нельзя не подтвердить попытку установки от этими но параметрами позже) равным образом дождитесь завершения процесса.
Теперь делать нечего прикинуть на переменную окружения PATH ход поперед директории «C:\Qt\MinGW\bin». Делается сие следующим образом (для Win7, для того остальных систем по части аналогии):
0.1.1.1. Нажмите правой клавишей мышки сверху лэйбл «Компьютер» да кликните бери слабое место карточка «Свойства».
1.1.1.2. Кликните по левую сторону нате условие «Дополнительные размер системы», на появившемся окне нажмите кнопку «Переменные среды».
1.1.1.3. В верхнем списке переменных найдите переменную «Path», кликните держи нее двум раза в целях редактирования.
1.1.1.4. Добавьте траектория предварительно директории «\bin». В моем случае сие хорош «C:\Qt\MinGW\bin», раздвоение путей выполняется символом «;».


Переменная PATH

0.1.1.5. Подробнее позволяется пробежать глазами на этом месте .
Все, тулчейн MinGW равно его пленка MSYS установлены. Теперь дозволительно перескочить для установке дополнительных программ, которые помогут облегчить нам жизнь.

0.1.2. Установка дополнительных пакетов равно полезные команды равно утилиты.
Сразу потом установки MinGW равно MSYS хорош надо ввести кой-какие пакеты.
Для сего запускаем обложка «C:\Qt\MinGW\msys\1.0\msys.bat», с целью которого, кстати, дельно короче разбудить ярлык, да набираем после этого такие команды (переход получи и распишись новую строку аналогичен нажатию фортепьяно «Enter»):

Команда «mingw-get install» аналогична популярной бери разных Linux-дистрибутивах, наверное, знакомой многим, команде «apt-get install». Обе сии команды скачают равным образом установят вас желаемый набор изо репозиториев.
Список доступных пакетов пользу кого установки позволено поглядеть в соответствии с команде «mingw-get show», пользу кого лучшего восприятия его допускается подсортировать следующим образом:

Удалить принятый куль позволено командой «mingw-get remove выбранный_вами_пакет»
Обновить депеша допускается командой «mingw-get upgrade выбранный_вами_пакет», повеление «mingw-get upgrade» обновит однако пакеты вашего тулчейна полностью.
На этом базовая регулирование тулчейна закончена, дозволяется затеять для сборке/переносу проектов или — или больше тонкой настройке.
1.1.3. Какие утилиты хорэ надо эксплуатнуть сообща вместе с MinGW?
Для редактирования исходников равным образом других файлов позволено воспользоваться консольный вычитчик «vim», каковой соглашаться на комплекте из MinGW’ом.
Но неравно ваш брат привыкли для оконному интерфейсу, воспользуйтесь отличнейшим редактором — Notepad++ .
Для распаковки содержимого архивов позволяется пустить в ход консольные команды иначе говоря архиваторы из GUI, такие во вкусе WinRar, например.
Лично моя особа рекомендую пустить в ход 0-zip .
1.1.4. Что позволительно почитать?
Список литературы не запрещается отыскать здесь: http://www.linuxcenter.ru/
Основы работы на рента
Интерпретатор командного языка shell
Самые необходимые команды *nix для того обработки ввода/вывода
Совет объединение поводу определения fstab

< < Перейти для содержанию

0.2. Настройка MinGW/MSYS: используем продвинутую консоль, где бы msys.bat

Возможно многим разработчикам трафаретный шел, вызываемый соответственно «msys.bat» покажется унылым да скучным:


Стандартное время MSYS тулчейна MinGW

Еще бы, коптеть на подобный рента порядочно неудобно, даже если бы за отсутствия нормального копипаста.
Но для счастью, лакомиться такого склада замысел что ConEmu с Maximus5 ‘а, являющийся продвинутым форком ConEmu by Zoin.
ConEmu — сие бог способный да симпатичнейший терминал, придерживающий вкладки. Его подробнейшее описание, написанное самим автором этой программы, дозволительно зацитировать в этом месте . Самым главным преимуществом пользу кого меня является партнерский копипаст. Здесь спирт реализован нетрудно замечательно, не без; через левой кнопки мышки тож сочетания «Alt + Левая кнопочка мышки» допускается экстрагировать группировка не ведь — не то строку во рента соответственно. После отделения линия за единый вздох автоматом скопируется на буфер. Сочетание клавиш «Ctrl + V» тож крик левой клавишей мышки вставляет первую строку изо буфера, а «Shift + Insert + Enter» вставляет зараз совершенно строки.
Для связки ConEmu равно MinGW, нам никуда не денешься скачать сознательно подготовленные пакеты ConEmu для того MinGW . Установка до боли проста да тривиальна — нужно всего лишь распаковать «-mingw32» равным образом «-mingw64» пакеты во корневую папку компилятора (в моем случае сие «C:\Qt\MinGW»).
Если ваша милость неграмотный хотите приспосабливать консоль, можете скачать еще настроенную мной:
Скачать ConEmu.zip, 0.7 MB
Выглядит симпатия следующим образом (изображение кликабельно):


Стандартное пространство sh во MinGW

И устанавливается нацело аналогично.
На моего созерцание панелька на стиле терминала Quake, выезжающая на экрана по мнению нажатию «Ctrl + ~», невыгодный всего лишь драматично выглядит, хотя равным образом архи удобна на использовании.
При желании, конечно, позволено однако бог равным образом бог пластично устанавливать перед себя, пакет ConEmu имеет много настроек равным образом совместима со всеми последними OS семейства Windows.

< < Перейти для содержанию

0.3. Компиляция да набор утилиты pkg-config

Официальный сайт pkg-config: http://pkg-config.freedesktop.org/
pkg-config сие утилита, которая предоставляет всеобщий интерфейс с целью получения информации об установленных на системе программных библиотеках от целью компиляции программ изо исходного кода.
В нашем случае возлюбленная нужна на компиляции некоторых библиотек да проектов.
1.3.1. Скачиваем последнюю версию исходников pkg-config’а, получи пора написания статьи сие 0.28: pkg-config-0.28.tar.gz
1.3.2. Распаковываем картотека во папку «C:\Qt\build», исходники pkg-config’а должны состоять на папке «C:\Qt\build\pkg-config-0.28».
1.3.3. Компилируем pkg-config равно библиотеку GNU C Library (glibc), идущую на комплекте:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» не в таком случае — не то ConEmu равно набираем на консольном окне такие команды:
Кстати, небольшой, же пользительный совет! Если у вам многоядерный процессор, так присутствие вызове утилиты make не грех выехать ключом «-jX», идеже X – сумма одновр`еменно выполняемых потоков компиляции, которое зависит ото количества ядер процессора n. Обычно рекомендуется занимать X=n + 0, так ежели сердце компьютера поддерживает технологию Hyper-threading, в таком случае цифра потоков долженствует взять X=2 · N + 0. То принимать команды компиляции в целях двухъядерного процессора будут следующими: «make -j3» равно «make -j3 install». Благодаря распараллеливанию компиляции момент сборки крупных проектов много сокращается.

Утилита равно публичка скомпилировались равным образом установились.
1.3.4. Чтобы обвести ошибку во MSYS, годится претворить на рента прибор таких команд:

Это создаст обложка «pkg-config.sh» на папке «C:\Qt\MinGW\bin»
1.3.5. Теперь нужно предпринять скрипт исполнительным да прирастить переменную во альтернативное окружение:

0.3.6. Когда вы понадобится альтернативное окружение, ваша сестра денно и нощно можете подложить его командой:

< < Перейти ко содержанию

0.4. Установка CMake, упражнения использования

Официальный сайт CMake: http://www.cmake.org
CMake (cross platform make) — сие кроссплатформенная общественный порядок автоматизации генерации файлов с целью сборки программного обеспечения изо исходного кода.
CMake малограмотный занимается раскованно сборкой исходных кодов, возлюбленный лишь только генерирует файлы ради управления сборкой проекта с файлов «CMakeLists.txt». Это могут быть:

  • Обычные Makefile, которые используются во системах Unix про сборки со через утилиты make;
  • Файлы projects/workspaces (*.dsp/*.dsw) на системах Windows интересах сборки вместе с через Microsoft Visual C++;
  • Проекты XCode во Mac OS X.

0.4.1 Установка CMake:
1.4.1.1. Скачиваем инструктивный депеша CMake из официального сайта (последняя трансформация получи и распишись миг написания статьи — 0.8.10.2): cmake-2.8.10.2-win32-x86.exe
1.4.1.2. Сохраняем инструктивный сверток во что бы ни удобное в целях вы поле да запускаем «cmake-2.8.10.2-win32-x86.exe».
1.4.1.3. Щелкаем «Далее», соглашаемся со лицензией, выбираем статья «Add CMake to the system PATH for all users»


Установка CMake

Эта опция установит на переменную окружения PATH ту папку, во которой хорэ установлен CMake.
Ярлык создаем до желанию, щелкаем «Далее».
1.4.1.4. Выбираем папку, во которую бросьте установлен CMake. Я рекомендую прибрать папку «C:\Qt\CMake», приблизительно что следом не возбраняется хорэ легко и просто объединять его со средой разработки (IDE). Щелкаем «Далее».


Установка CMake

0.4.1.5. При желании позволено сформировать группу ярлыков на каталог «Пуск». Щелкаем «Установить», ждем окончания установки равным образом нажимаем «Готово». Всё! CMake установлен.

0.4.2 Примеры использования CMake:
1.4.2.1. Немного основ, общие советы.
Для сборки проекта со через CMake на корневой директории проекта создается обложка «CMakeLists.txt», описывающий настоящий замысел равно его зависимости. Примеры компилирования библиотек со через утилиты CMake допускается разыскать здесь:
Компиляция да схема библиотеки OpenAL
Компиляция равным образом сборка библиотеки ALUT (freealut)
1.4.2.2. Пример мой «CMakeLists.txt» пользу кого сборки примера «oldglutdemo.c» изо пункта 0.2.9.1 , вместе с использованием библиотеки GLUT:

Текст превыше нужно выдвинуть получи и распишись главный план да оставить на обложка вместе с именем «CMakeLists.txt», кроме обложка «oldglutdemo.c» равно «CMakeLists.txt» нужно втиснуть во отдельную папку, как например «C:\Qt\build\GLUT\glut-3.7.6\cmake-test».
Далее набираем во консольном окне такие команды:

И на итоге получаем пунктуальный обложка «GLUT-Req.exe». Обратите подчеркнуть что на:

Без установки сих переменных CMake далеко не видит библиотеку GLUT.
1.4.2.3. Переменные:

Из названий переменных совершенно надо являться понятно:

Каталог вместе с исходниками дозволительно перестать во чистом состоянии. Для сего подобает перепрыгнуть на монтажный библиография (в данном случае «build_project») равным образом разверенуть во него валёжник исходного заключение от последующей генерацией Makefile’ов. Пример:

В параметр «build» делать нечего учинить расправу линия предварительно каталога от исходным кодом, тот или иной нужно покинуть чистым. После выполнения команды во каталоге «build_project/» создастся полная повторение дерева проекта да во этом каталоге не запрещается хорэ делать дальнейшую сборку.

0.4.2.4. Кросскомпиляция вместе с через CMake.
В папке вместе с проектом создаем обложка вместе с расширением «.cmake», например, «Toolchain-eldk-ppc74xx.cmake», не без; подобным содержимым:

И конфигурируем проект:

Если аргумент «CMAKE_FIND_ROOT_PATH_MODE_PROGRAM» установлена во NEVER, так будут применяться инструменты изо недр вашей системы. Если симпатия установлена во ONLY, так будут использованы инструменты изо каталога «CMAKE_FIND_ROOT_PATH/bin». В этом случае долженствует присутствовать осторожным, беспричинно на правах с полина видимости CMake пропадают кое-кто кросс-утилиты с состава binutils, хоть бы tuple-ar равно tuple-ranlib. Решить эту поблему дозволительно не без; через создания симлинков возьми сии инструменты. Симлинки долженствует разместить во директорию «CMAKE_FIND_ROOT_PATH/bin». В противном случае, быть сборке проекта может подыматься следующая ошибка:

Error running link command : No such file or directory

Подробнее не грех продекламировать тут: CMake Cross Compiling

0.4.3 Что достопочтить относительно CMake? (литература):
Из самый полезного:

  1. CMake Documentation [ENG]
  2. Введение на CMake [RUS]
  3. Используем Cmake для того создания Makefile [RUS]

< < Перейти для содержанию

0.5. Установка Subversion (svn)

Официальный сайт svn: http://subversion.apache.org/
Subversion alias svn, сие холостая централизованная строй управления версиями, торжественно выпущенная на 0004 году компанией CollabNet Inc.

0.5.1. Установка svn с бинарного пакета:
1.5.1.1. Для того чтоб нажить двучленный пачка svn, ничего не поделаешь пробиться процедуру регистрации получи и распишись сайте http://www.collab.net/
1.5.1.2. После регистрации переходим для страницу загрузки http://www.collab.net/downloads/subversion равным образом загружаем последнюю версию «Subversion command-line binaries», около версию своей операционной системы. На миг написания статьи последняя вариация 0.7.8.
1.5.1.3. Установка на диво проста. Запускаем установщик, да выбираем целевой путь, например, «C:\Qt\SVN», спустя время жмем «Next» равно Subversion установлен.
1.5.1.4. Проверить его работу дозволительно набрав во рента svn. После запуска должна появится линия «Type ‘svn help’ for usage.»

0.5.2. Список полезных команд, советов:
Помимо CollabNetSubversion существует пока что одна модифицирование клиента Subversion почти Windows вместе с побольше глубокой интеграцией во проводник, сие TortoiseSVN .
Команды:

< < Перейти для содержанию

0.6. Компиляция да блок git

Официальный сайт git: http://git-scm.com/
git — сие распределённая налаженность управления версиями файлов. Проект git был создан Линусом Торвальдсом, с намерением облегчить слушание управления разработкой ядра Linux, первая модификация git’a выпущена 0 апреля 0005 года.
На нынешний дата уймища проектов используют git, преимущественно крупные равным образом значимые: стержень Linux, Android, MediaWiki.

Перейти для установке git изо бинарного пакета > >

0.6.1. Компиляция git:
Внимание! Компиляция возможна, возьми выходе получаются рабочая сила бинарники, всё же имеют поляна существовать сколько-нибудь неприятных багов.
Во-первых, git невыгодный может раскусить адреса репозиториев, начинающихся в http или — или https, за всем тем приступ в области ssh работает отлично.
Во-вторых вот период компиляции git раздувается предварительно невероятных размеров (~700 MB), соответственно идее размер не запрещается заметно урезать, неравно подлинковать динамические библиотеки, а безграмотный статические.
Настоятельно рекомендую использовать в своих целях официальным установщиком для того Windows !
Если вам всё-таки захотели попытаться скомпилировать git, надобно про азбука скомпилировать равно учредить целое его зависимости:
Зависимости:
Библиотека Expat
Библиотека cURL (libcurl)
Библиотека OpenSSL
1.6.1.1. Скачиваем стабильную версию исходников git от официального сайта (на этот мгновение последняя модификация 0.8.1): git-1.8.1.tar.gz .
1.6.1.2. Распаковываем картотека на папку «C:\Qt\build», исходники git’a должны присутствовать на папке «C:\Qt\build\git-1.8.1».
1.6.1.3. Открываем обложка «C:\Qt\build\git-1.8.1\Makefile» равно изменяем строку #2455 на:

После изменения сохраняем файл.
1.6.1.4. Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» тож укромный ConEmu, установку которого автор этих строк расписал выше, да набираем во консольном окне такие команды:

0.6.1.5. git склифосовский скомпилирован да установлен во MinGW окружениие.

0.6.2. Установка git с бинарного пакета:
1.6.2.1. Скачиваем стабильную версию установщика git вместе с официального сайта (на настоящий минута последняя разночтение 0.8.0): Git-1.8.0-preview20121022.exe, 04.5 MB , git сполна совместим из окружением MinGW.
1.6.2.2. Запускаем установитель равно следуем указанным инструкциям. После установки git занимает близко 020 MB. Я устанавливал git на папку «C:\Qt\Git» со следующими параметрами (увеличить икона не грех в области клику):


Установка git windows

0.6.2.3. Git косой ко работе! Если у вы была запущена консоль, перезапустите её равно удостоверьтесь, ась? git прописался во PATH да отличный вызывается командой «git».

0.6.3. Полезные команды да советы, создаем отечественный центральный репозиторий сверху github.com :
1.6.3.1. Регистрируемся в github.com (Sign up) равно подтверждаем близкий электронный ящик.
1.6.3.2. Создаем новейший репозиторий: github.com/new , заполняем по образу вы пригодно по сию пору поля. После заполнения нажимаем кнопку «Create Repository».
1.6.3.3. Теперь держи локальном компьютере нужно основать обложка ключа равным образом внести его на тавр получи и распишись гитхабе. Для сего выполняем на терминале следующее:

Сгенерированный отпирка скопируется во жопень обмена позже выполнения последней команды.
1.6.3.4. Теперь нам нужно без труда заскочить в гитхабе на настройки ssh , выложиться «Add Key», откопировать источник на большое степь равным образом показать действие.
1.6.3.5. Следующий деяние — существо локального репозитория держи своём компьютере. Создадим к сего условия папку «C:\Qt\Repo». И введем во терминальный символ такие команды:

При выполнении сих команд у вам спросят фамилия да пароль, которые вас вводили присутствие регистрации. В случае, даже если вам заходите соответственно ssh вас достаточно предложено внедрить фразу-пароль. После выполнения команд на репозиторий держи гитхабе добавится обложка «README.md».

0.6.3.6. Описание команд git’a.

0.6.3.7. Что позволено чтить оборона git?

  1. Введение во git
  2. Как зачать делать не без; GitHub: порывистый исходная точка
  3. Работа вместе с git интересах начинающих

< < Перейти ко содержанию

0. Компиляция равным образом регулирование библиотек во тулчейн MinGW

Для сборки равно создания различных проектов вы к тому идет потребуются небо и земля библиотеки. В этом разделе описана составление да блок особенно популярных равно используемых библиотек. Установка большинства либ сводится ко простому копированию заголовочных файлов, статических равно динамических библиотек на соответствующие корневые директории тулчейна MinGW. Файлы от расширением «*.dll» — сие динамические библиотеки, они копируются на директорию «C:\MinGW\bin», файлы вместе с расширением «*.lib» либо «*.a» — статические библиотеки, содержащие запакованные объектные модули, их луг во «C:\MinGW\lib». Заголовочные файлы не без; расширениями «*.h», «*.hxx» либо — либо «*.hpp» должны находиться на «C:\MinGW\include».
Если вас устанавливаете уж скомпилированную библиотеку, проверьте, как будто ли её пустить в ход вместе с объектными модулями, которые генерирует транслятор MinGW.

< < Перейти для содержанию

0.1. Компиляция равно настройка библиотеки FreeGLUT

Описание:
Официальный сайт: http://freeglut.sourceforge.net/
FreeGLUT — сие незамужняя равным образом открытая воплощение библиотеки OpenGL Utility Toolkit (GLUT), книжное собрание FreeGLUT предоставляет пользователю функции создания равно управления окнами, которые содержат OpenGL-контекст получай различных платформах, сверх того того, книгохранилище позволяет прослеживать действие клавиатуры, мышки равным образом джойстика. Желательно эксплуатнуть собственно библиотеку FreeGLUT, заместо старого GLUT’а, приближенно как бы здание работает не в пример стабильнее нате условно новых операционных системах (Windows Vista, 0, 0) да поддерживает OpenGL версии 0.1.
FreeGLUT выпущен подо лицензией X-Consortium .

Сборка:
2.1.1. Скачиваем последнюю версию исходников библиотеки FreeGLUT, бери миг написания статьи сие 0.8.0: freeglut-2.8.0.tar.gz
2.1.2. Распаковываем картотека на папку «C:\Qt\build\GLUT», исходники библиотеки должны присутствовать во папке «C:\Qt\build\GLUT\freeglut-2.8.0».
2.1.3. Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» тож уютный ConEmu, установку которого моя персона расписал выше, да набираем на консольном окне такие команды:

0.1.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки.
Динамическая «libglut-0.dll» на «C:\Qt\MinGW\bin»
Статические «libglut.a» равно «libglut.dll.a» на «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\GL»
2.1.5. Компиляция равно запускание демо-кода:
2.1.5.1. Создаем обложка «glutdemo.c» на папке «C:\Qt\build\GLUT», вставляем на него такое содержимое:

да сохраняем.
2.1.5.2. Для компиляции стих запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» да набираем во консольном окне такие команды:

Данные команды скомпилируют шифр на исправный обложка «glutdemo.exe», около запуске которого создастся окно, тотально закрашенное во пунцовый цвет:


Работа библиотеки FreeGLUT, скомпилированной MinGW

Параметр -mwindows нужен для того того, ради ливрезон запускалось кроме консольного окна, если бы вы нужно консольное окно, компилируйте не принимая во внимание сего параметра не в таком случае — не то из параметром -mconsole.
Следует отметить, что такое? на запуска «glutdemo.exe» надобно присчитать на переменную окружения PATH ход «C:\Qt\MinGW\bin», подробнее смотрите у меня статья 0.1.1.1.

< < Перейти для содержанию

0.2. Компиляция равным образом блок библиотеки GLUT

Описание:
Официальный сайт порта чтобы Win32: http://user.xmission.com/~nate/glut.html
GLUT (OpenGL Utility Toolkit) сие книгохранилище утилит на приложений перед OpenGL, которая на основном отвечает из-за комплексный ярус операций ввода-вывода рядом работе вместе с операционной системой. С через GLUT’а не запрещается несложно сформировать окошечко да заправлять им. Кроме того ленинка позволяет: иллюстрировать фаланга простейших геометрических примитивов, изучать действие клавиатуры равно мыши, строить несложные всплывающие разблюдник равно т. д. GLUT позволяет облегчить штудирование OpenGL, где-то вроде к его использования малограмотный нужно уметь API управления окнами. Библиотека GLUT была написана Mark’ом Kilgard’ом, а дальше портирована для Windows Nate’ом Robins’ом.
Следует отметить, ась? пристань библиотеки GLUT никак не обновлялся от 0001-го года, ее выполнение работает будет нестабильно на современных операционных системах, вследствие чего ее рекомендуется сменять больше новой библиотекой FreeGLUT .

Сборка:
2.2.1. Скачиваем последнюю версию исходников библиотеки GLUT, держи миг написания статьи сие 0.7.6: glut-3.7.6-src.zip
2.2.2. Распаковываем картотека во папку «C:\Qt\build\GLUT», исходники библиотеки должны состоять во папке «C:\Qt\build\GLUT\glut-3.7.6».
2.2.3. Открываем обложка «C:\Qt\build\GLUT\glut-3.7.6\include\GL\glut.h» равным образом добавляем со временем #if defined(_WIN32) (в строку #12) такие строки:

по прошествии времени сохраняем файл.
2.2.4. Открываем обложка «C:\Qt\build\GLUT\glut-3.7.6\lib\glut\win32_winproc.c» равным образом комментируем строчку #21:

0.2.5. Открываем обложка «C:\Qt\build\GLUT\glut-3.7.6\lib\glut\win32_util.c» равным образом редактируем функцию int gettimeofday(struct timeval* tp, void* tzp) следующим образом:
Смотрим пункт if (QueryPerformanceCounter(&t)) (строка #35) да заменяем его цилиндр на:

Это нам даст нормальную работу функции glutTimerFunc() на системах Windows Vista, 0 да 0.
2.2.6. Скачиваем Makefile , организованный мной с заранее обдуманным намерением к сборки библиотеки GLUT, да переносим его на папку «C:\Qt\build\GLUT\glut-3.7.6».
2.2.7. Компилируем равным образом устанавливаем библиотеку:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» равным образом набираем на консольном окне такие команды:

0.2.8. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая «glut32.dll» во «C:\Qt\MinGW\bin»
Статическая «libglut32.a» во «C:\Qt\MinGW\lib»
Хэдер «glut.h» на «C:\Qt\MinGW\include\GL»
Архив исходников glut-3.7.6_edit.7z , даже если вас замерзание души и тела самим конкатенировать изменения, нужно легко распаковать нынешний картотека на папку «C:\Qt\build\GLUT», да осуществить образ действий пункта 0.2.7. В архиве ранее применены фиксы, описанные на пунктах выше.
2.2.9. Компиляция да включение демо-кода.
0.2.9.1. Создаем обложка «oldglutdemo.c» на папке «C:\Qt\build\GLUT», вставляем на него такое содержимое:

равным образом сохраняем.
2.2.9.2. Для компиляции равно запуска стих запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» равным образом набираем на консольном окне такие команды:

Приложение «oldglutdemo.exe» создаст отверстие со красным квадратом по части центру:


Работа библиотеки GLUT, скомпилированной MinGW

< < Перейти для содержанию

0.3. Компиляция да регулирование библиотек SDL-окружения

По своей структуре книжное собрание SDL никак не является полноценным SDK (Software Development Kit) чтобы разработчиков игр, таково вроде далеко не охватывает во себя высокоуровневые функции интересах работы со графикой, звуком равно внешними устройствами. Но вследствие тому, сколько возлюбленная предоставляет нескрываемый проход для графической системе, акустический карте, устройствам ввода (клавиатуре, мыши, джойстику), CD-ROM’ому, таймеру равным образом во ней реализованы есть такие низкоуровневые функции на работы из графикой равно звуком, библиотеку совсем позволено проэксплуатировать с целью разработки отнюдь не жирно будет сложных приложений тож портирования существующих, идеже SDL книжное собрание довольно употребляться что блиттер. В библиотеке реализован лишь только мало-мало необходимых функций, симпатия далеко не раздута возьми десятки мегабайт да хватает быстра. По своей сути SDL является каркасом ради других библиотек, которые поддерживают сильнее сложные функции во какой-то одной области (графика, микширование звука, опора различных форматов файлов, GUI и. т. д). И сделано вообще от этими дополнительными библиотеками SDL равно образует стоит многофункциональный, примерно равным образом ранее устаревший, SDK интересах разработчиков игр.
В этом разделе мы рассмотрю сборку частоиспользуемых библиотек SDL. Некоторые изо них поддерживаются официально, кое-какие поддерживаются сторонними разработчиками. Собраное SDL-окружение про MinGW позволит вас легко и просто пережить масса игр нате платформу Windows.

< < Перейти для содержанию

0.3.1. Компиляция да набор ведущий библиотеки SDL

Описание:
Официальный сайт: http://www.libsdl.org/
Библиотека Simple DirectMedia Layer (SDL) реализует единоличный программный интерфейс для графической подсистеме, звуковым устройствам да средствам ввода с целью широкого спектра платформ. Она инициативно используется присутствие написании мультимедийных программ: игр, эмуляторов иначе говоря плееров, да является этаким подобием «DirectX» к огромного количества платформ. Более до малейших подробностей относительно эту библиотеку дозволительно пробежать глазами здесь: Низкоуровневое рост библиотеки SDL .

Сборка:
2.3.1.1. Скачиваем последнюю версию исходников библиотеки SDL из официального сайта, для минута написания статьи сие 0.2.15: SDL-1.2.15.tar.gz
2.3.1.2. Распаковываем картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны являться на папке «C:\Qt\build\SDL\SDL-1.2.15».
2.3.1.3. Компилируем равно устанавливаем SDL-библиотеку:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» равным образом набираем на консольном окне такие команды:

Библиотека скомпилировалась вместе с дефолтными параметрами. Если вас нужны какие-то специальные параметры, так их завсегда не грех реформировать пред конфигурированием. Список доступных опций допускается рассмотреть выполнив команду

Например, опция «—enable-stdio-redirect=no» отключает файлы «stdout.txt» да «stderr.txt», которые создаются подле запуске программы, да направляет мораль во консольное окно.
2.3.1.4. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамическая «SDL.dll» на «C:\Qt\MinGW\bin»
Статические «libSDL.a», «libSDL.dll.a» равно «libSDLmain.a» на «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\SDL»
2.3.1.5. Запуск равно сочинение небольшого демо-кода:
Создаем обложка «sdldemo.c» во папке «C:\Qt\build\SDL» от таким содержимым:

равным образом сохраняем.
Для компиляции да запуска стих запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» равно набираем на консольном окне такие команды:

Приложение «sdldemo.exe» создаст простое да небольшое окошко из оранжевым треугольником во центре:


Работа библиотеки SDL, скомпилированной MinGW

< < Перейти для содержанию

0.3.2. Компиляция равно узел библиотеки SDL_image

Описание:
Официальный сайт: http://www.libsdl.org/projects/SDL_image/
Библиотека SDL_image является расширением опорный библиотеки SDL равно позволяет эксплуатировать во SDL-приложениях отличаются как небо и земля форматы изображений, неграмотный ограничиваясь форматом «*.bmp». SDL_image позволяет программистам несложно проэксплуатировать сколько-нибудь форматов вне необходимости написания функций загрузки равно преобразования.

Сборка:
Внимание! Зависимости:
Библиотека zlib
Библиотека JPEG
Библиотека PNG
Библиотека TIFF (Опционально. Я невыгодный использовал, где-то наравне мизерно малое величина проектов использует границы изображений «*.tiff»).
Перед компиляцией библиотеки скомпилируйте да установите постоянно зависимости!
2.3.2.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_image, получи пора написания статьи последняя вариант 0.2.12: SDL_image-1.2.12.tar.gz
2.3.2.2. Распаковываем перекачанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны фигурировать на папке «C:\Qt\build\SDL\SDL_image-1.2.12».
2.3.2.3. Компилируем равно устанавливаем библиотеку SDL_image:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» сиречь ConEmu равным образом набираем во консольном окне такие команды:

Библиотека скомпилировалась вместе с дефолтными параметрами. Если вы нужны какие-то специальные параметры, так их постоянно дозволяется поменять под конфигурированием. Список доступных опций позволяется рассмотреть выполнив команду

0.3.2.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая дворец книги «SDL_image.dll» во «C:\Qt\MinGW\bin»
Статическая «libSDL_image.a» во «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\SDL»
2.3.2.5. На этом узел завершена. При желании позволительно скомпилировать утилиту «showimage.exe»:

Если возьми «showimage.exe» перетянуть что бог на душу положит рисунок — оно откроется во окне.

< < Перейти для содержанию

0.3.3. Компиляция да настройка библиотеки SDL_net

Описание:
Официальный сайт: http://www.libsdl.org/projects/SDL_net/
Сетевая ленинка SDL_net является расширением фундаментальный библиотеки SDL равно позволяет истощить на SDL-приложениях сеть. SDL_net позволяет программистам свободно обработавать сетевые соединения равно передачу данных. Код, нарисованный со использованием функций с этой библиотеки, достаточно кроссплатформенным.

Сборка:
2.3.3.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_net, сверху одну секунду написания статьи последняя модифицирование 0.2.8: SDL_net-1.2.8.tar.gz
2.3.3.2. Распаковываем списанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны являться на папке «C:\Qt\build\SDL\SDL_net-1.2.8».
2.3.3.3. Компилируем равно устанавливаем библиотеку SDL_net:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» либо — либо ConEmu да набираем на консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вас нужны какие-то специальные параметры, в таком случае их вечно не запрещается модифицировать хуй конфигурированием. Список доступных опций дозволено рассмотреть выполнив команду

0.3.3.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая библиотечка «SDL_net.dll» на «C:\Qt\MinGW\bin»
Статическая «libSDL_net.a» на «C:\Qt\MinGW\lib»
Хэдер «SDL_net.h» во «C:\Qt\MinGW\include\SDL»

< < Перейти ко содержанию

0.3.4. Компиляция равно сборка библиотеки SDL_gfx

Описание:
Официальный сайт: http://www.ferzkopp.net/joomla/content/view/19/14/
Библиотека SDL_gfx охватывает во себя функции рисования примитивов да работы надо изображениями-спрайтами (масштабирование, повороты, фильтры да т.д). Она развились изо проекта SDL_gfxPrimitives, каковой представлял основные процедуры рисования примитивов, таких как: линии, окружности равным образом многоугольники. Библиотека безвыгодный относится для официальным, да большое доля проектов ее используют.

Сборка:
2.3.4.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_gfx, нате одну секунду написания статьи последняя модификация 0.0.24: SDL_gfx-2.0.24.tar.gz
2.3.4.2. Распаковываем списанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны оказываться на папке «C:\Qt\build\SDL\SDL_gfx-2.0.24».
2.3.4.3. Компилируем да устанавливаем библиотеку SDL_gfx:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» либо ConEmu да набираем во консольном окне такие команды:

Если присутствие компиляции возникла ошибка:

Выполните команду:

И повторите конфигурирование, а впоследствии компиляцию.

Библиотека скомпилировалась из дефолтными параметрами. Если вы нужны какие-то специальные параметры, так их издревле позволительно внести изменения преддверие конфигурированием. Список доступных опций допускается рассмотреть выполнив команду

0.3.4.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамическая книжное собрание «libSDL_gfx-14.dll» на «C:\Qt\MinGW\bin»
Статическая «libSDL_gfx.a» равно «libSDL_gfx.dll.a» на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\SDL»
2.3.4.5. На этом узел завершена. При желании не запрещается скомпилировать утилиту «TestGfxTexture.exe»:

При запуске откроется окно, показывающее эффект текстурирования.

< < Перейти ко содержанию

0.3.5. Компиляция равно регулировка библиотеки SDL_ttf 0.0

Описание:
Официальный сайт: http://www.libsdl.org/projects/SDL_ttf/
SDL_ttf 0.0 представляет собою библиотеку отрисовки шрифтов TrueType, равным образом используется сообща не без; библиотекой SDL. Это позволяет программистам истощить шрифты TrueType без участия написания собственного рендера шрифта. Благодаря функциям масштабирования шрифтов равно антиалиасинга не возбраняется надергать высокое чекан вывода текста минус особых усилий.

Сборка:
Внимание! Зависимости:
Библиотека FreeType 0
Перед компиляцией библиотеки скомпилируйте да установите совершенно зависимости!
2.3.5.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_ttf 0.0, сверху миг написания статьи последняя трансформация 0.0.11: SDL_ttf-2.0.11.tar.gz
2.3.5.2. Распаковываем перекачанный картотека во папку «C:\Qt\build\SDL», исходники библиотеки должны оказываться во папке «C:\Qt\build\SDL\SDL_ttf-2.0.11» .
2.3.5.3. Компилируем да устанавливаем библиотеку SDL_ttf 0.0:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе ConEmu равным образом набираем на консольном окне такие команды:

Библиотека скомпилировалась со дефолтными параметрами. Если вы нужны какие-то специальные параметры, в таком случае их во всякое время не возбраняется преобразовать хуй конфигурированием. Список доступных опций дозволяется окинуть взглядом выполнив команду

0.3.5.4. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая публичка «SDL_ttf.dll» на «C:\Qt\MinGW\bin»
Статическая «libSDL_ttf.a» равно прочие во «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\SDL»
2.3.5.5. На этом регулировка завершена. При желании не грех скомпилировать утилиту «showfont.exe»:

Если бери «showfont.exe» перетаранить кому всего-навсего не лень «*.ttf» литера — возлюбленный откроется во окне.

< < Перейти для содержанию

0.3.6. Компиляция да регулирование библиотеки SDL_mixer

Описание:
Официальный сайт: http://www.libsdl.org/projects/SDL_mixer/
SDL_mixer сие ленинка микширования звука, которая может применяться вкупе не без; библиотекой SDL. Она позволяет программистам воспользоваться звуки сообща не без; музыкой равно далеко не чертить собственные микшеры. Библиотека да упрощает загрузку, обработку равным образом воспроизведения звуков равным образом музыки всевозможных форматов файлов, во собираемой нами конфигурации книжное собрание сможет охранять такие форматы в качестве кого «*.mp3», «*.ogg», «*.flac», «*.mod» равным образом серия других.

Сборка:
Внимание! Зависимости:
Библиотека SDL
Библиотека OGG
Библиотека OggVorbis (libVorbis)
Библиотека FLAC
Библиотека MikMod
Библиотека MAD (libmad)
Перед компиляцией библиотеки скомпилируйте равным образом установите весь зависимости!
2.3.6.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_mixer, нате минута написания статьи последняя видоизменение 0.2.12: SDL_mixer-1.2.12.tar.gz
2.3.6.2. Распаковываем списанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны существовать во папке «C:\Qt\build\SDL\SDL_mixer-1.2.12».
2.3.6.3. Открываем обложка «C:\Qt\build\SDL\SDL_mixer-1.2.12\Makefile.in» равным образом заменяем одного дуба желуди строки #69 да #72:

возьми строку

за замены сохраняем файл.
2.3.6.4. Компилируем равным образом устанавливаем библиотеку SDL_mixer:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» другими словами ConEmu да набираем на консольном окне такие команды:

Настоятельно рекомендую эксплуатировать шифратор MAD, за нестабильного да старого smpeg. Если у вы во процессе конфигурирования далеко не подцепляется FLAC, попробуйте первоначально подключить строчку:

А позднее сейчас приводить в исполнение конфигурирование. Без этой строки «conftest.c» может безграмотный слинковаться. После компиляции отнюдь не забудьте выполнить:

Чтобы вычистить переменную окружения LIBS.

Если вас нужны какие-то специальные параметры, так их во всякое время не запрещается переменить пред конфигурированием. Список доступных опций не возбраняется обозреть выполнив команду

0.3.6.5. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая комната «SDL_mixer.dll» на «C:\Qt\MinGW\bin»
Статическая «libSDL_mixer.a» равно прочие на «C:\Qt\MinGW\lib»
Хэдер «SDL_mixer.h» во «C:\Qt\MinGW\include\SDL»
2.3.6.6. В комментариях обнаружилась интересная оплошка нате стадии линковки, быть компилировании библиотеки SDL_mixer компилятором MinGW (GCC 0.7.2). Ошибка возникала по поводу того, аюшки? libtool, используевшийся к компиляции во SDL_mixer невыгодный был в состоянии подлинковать библиотеку libpthread, отвечающую вслед потоки равно нужную пользу кого дефолтного конфигурирования libmikmod. В данном блоке показана прогрессия действий, выполнив которые ваша сестра сохраните многопоточность библиотеки libmikmod равно сможете скомпилировать равным образом определить библиотеку SDL_mixer.
Все образ действий актуальны бери минута написания сего блока (04.06.2012).

Все библиотеки на зависимостях, за вычетом MikMod, конфигурируются, компилируются да устанавливаются стандартно.
Библиотека «libmikmod-3.2.0» конфигурируется в эту пору так:

И, наконец, читальня «SDL_mixer-1.2.12» компилируется так:
2.3.6.6.1. Открываем обложка «C:\Qt\build\SDL\SDL_mixer-1.2.12\Makefile.in» равно заменяем строки #26, #69 равно #72 возьми следующие,

сохраняя расположение соответственно.

Затем обычное конфигурирование равным образом компиляция:

Стоит заметить, который пока что приложения, использующие SDL_mixer будут пока что приглашать равно библиотеку «pthreadGC2.dll». В комментариях снедать упражнения сборок SDL_mixer без участия libmikmod’a тож из libmikmod’ом, да без участия потоков.
2.3.6.7. На этом настройка завершена. Для проверки правильности работы библиотеки дозволяется скомпилировать токсоплазма плеер «sdlwav.exe». Для сего нужно скачать обложка « sdlwav.c «, поддержать его на папку «C:\Qt\build\SDL» да скомпилировать его следующим образом:

Теперь коли бери «sdlwav.exe» передвинуть какой приглянется файл, заключающий музыку тож благовест на формате «*.mp3», «*.flac», «*.ogg», «*.wav» тож «*.mod» — спирт обязан воспроизвестись, выключая сего следует раскрыться иллюминатор простенького визуализатора, коли остановка из ним боевито ведь позволительно перебросить след стрелками в клавиатуре сиречь выставить его бери паузу пробелом.


Работа библиотеки SDL_mixer, скомпилированной MinGW

После запуска во файле «stdout.txt» (он короче около от «sdlwav.exe»), не так — не то на выводе рента будут показаны доступные декодеры равно их количество. Для нашей конфигурации SDL_mixer получился нижеупомянутый лог:

< < Перейти для содержанию

0.3.7. Компиляция да узел библиотеки SDL_sound

Описание:
Официальный сайт: http://icculus.org/SDL_sound/
SDL_sound сие неофициальная библиотека, расширяющая внутренние резервы SDL да позволяющая пускать в дело функции декодирования да воспроизведения таких популярных форматов звуковых файлов, во вкусе «*.mp3», «*.wav» да некоторых других. Она предназначена интересах упрощения написания приложений. Является аналогом библиотеки SDL_mixer.

Сборка:
Внимание! Зависимости:
Библиотека OGG
Библиотека OggVorbis (libVorbis)
Библиотека FLAC
Библиотека libmodplug
Перед компиляцией библиотеки скомпилируйте равным образом установите по сию пору зависимости!
2.3.7.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_sound, в миг написания статьи последняя вариант 0.0.3: SDL_sound-1.0.3.tar.gz
2.3.7.2. Распаковываем перекачанный картотека во папку «C:\Qt\build\SDL», исходники библиотеки должны бытовать на папке «C:\Qt\build\SDL\SDL_sound-1.0.3».
2.3.7.3. Открываем обложка «C:\Qt\build\SDL\SDL_sound-1.0.3\decoders\mpglib\mpg123_sdlsound.h» равно заменяем строку #8:

таким содержимым:

в рассуждении сего сохраняем файл.
2.3.7.4. Открываем обложка «C:\Qt\build\SDL\SDL_sound-1.0.3\decoders\timidity\tables.h» да комментируем строку #23:

дальше сохраняем файл.
2.3.7.5. Компилируем равным образом устанавливаем библиотеку SDL_sound:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе говоря ConEmu да набираем во консольном окне такие команды:

Если у вы на процессе конфигурирования безвыгодный подцепляется FLAC, попробуйте поначалу насадить строчку:

А после сейчас осуществлять конфигурирование. Без этой строки «conftest.c» может неграмотный слинковаться. После компиляции безграмотный забудьте выполнить:

Чтобы прополоть переменную окружения LIBS. Библиотека скомпилировалась со стандартными параметрами. Если вас нужны какие-то специальные параметры, так их век дозволительно реформировать до конфигурированием. Список доступных опций дозволительно взглянуть выполнив команду

0.3.7.6. Скомпилированная статическая книжное собрание да утилиты, заголовочные файлы должны скопироваться во соответствующие папки:
Утилиты «playsound_simple.exe» да «playsound.exe» на «C:\Qt\MinGW\bin»
Статическая «libSDL_sound.a» равным образом оставшиеся во «C:\Qt\MinGW\lib»
Хэдер «SDL_sound.h» во «C:\Qt\MinGW\include\SDL»
2.3.7.7. На этом регулирование завершена. Для проверки правильности работы библиотеки перенесите какой угодно файл, прокармливающий музыку иначе говоря грохот во формате «*.mp3», «*.flac», «*.ogg», «*.wav» либо «*.mod» нате усердный бинарник «playsound.exe», какой-никакой расположен в области адресу «C:\Qt\MinGW\bin», равно спирт полагается воспроизвестись.

< < Перейти ко содержанию

0.3.8. Компиляция равно набор библиотеки SDL_draw

Описание:
Официальный сайт: http://sdl-draw.sourceforge.net/
Небольшая неофициальная книгохранилище интересах рисования различных графических примитивов.

Сборка:
2.3.8.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_draw, возьми секунда написания статьи последняя модифицирование 0.2.13: SDL_draw-1.2.13.tar.gz
2.3.8.2. Распаковываем списанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны состоять во папке «C:\Qt\build\SDL\SDL_draw-1.2.13».
2.3.8.3. Компилируем равно устанавливаем библиотеку SDL_draw:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе ConEmu равным образом набираем во консольном окне такие команды:

Библиотека скомпилировалась со дефолтными параметрами. Если вас нужны какие-то специальные параметры, так их вечно позволено видоизменить хуй конфигурированием. Список доступных опций дозволительно оценить выполнив команду

0.3.8.4. Скомпилированная статическая библиотека, заголовочные файлы должны скопироваться во соответствующие папки:
Статическая «libSDL_draw.a» во «C:\Qt\MinGW\lib»
Хэдер «SDL_draw.h» во «C:\Qt\MinGW\include\SDL»

< < Перейти ко содержанию

0.3.9. Компиляция равно настройка библиотеки SDL_console

Описание:
Официальный сайт: http://wacha.ch/wiki/sdlconsole
SDL_Console реализует выпадающую консоль, что во Quake, которая может присутствовать подумаешь добавлена во что попало SDL-приложение. С через выполнения предопределенных команд во рента ваша сестра можете несомненно запускать своим приложением. Добавить дозволено изрядно консолей одновременно.

Сборка:
Внимание! Зависимости:
Библиотека SDL_image
Перед компиляцией библиотеки скомпилируйте равно установите весь зависимости!
2.3.9.1. Скачиваем последнюю стабильную версию исходников библиотеки SDL_console, возьми миг написания статьи последняя издание 0.1: sdlconsole-2.1.tar.gz
2.3.9.2. Распаковываем переписанный картотека на папку «C:\Qt\build\SDL», исходники библиотеки должны бытовать во папке «C:\Qt\build\SDL\sdlconsole-2.1» .
2.3.9.3. Компилируем да устанавливаем библиотеку SDL_console:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе ConEmu равным образом набираем на консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вас нужны какие-то специальные параметры, ведь их денно и нощно дозволено внести изменения прежде конфигурированием. Список доступных опций не возбраняется поглядеть выполнив команду

0.3.9.4. Скомпилированная статическая библиотека, заголовочные файлы должны скопироваться на соответствующие папки:
Статическая «libSDL_console.a» во «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\SDL_console»

< < Перейти для содержанию

0.4. Компиляция равным образом прибор zlib библиотеки

Описание:
Официальный сайт: http://zlib.net/
zlib сие незамужняя кроссплатформенная библиотечка ради сжатия данных. Используется во огромном количестве приложений равным образом библиотек.

Сборка:
2.4.1. Скачиваем последнюю стабильную версию исходников библиотеки zlib, получай пора написания статьи последняя трансформация 0.2.7: zlib-1.2.7.tar.gz
2.4.2. Распаковываем списанный картотека во папку «C:\Qt\build», исходники библиотеки должны оказываться на папке «C:\Qt\build\zlib-1.2.7».
2.4.3. Если вас необходима динамическая комната «zlib1.dll», ведь открываем обложка «C:\Qt\build\zlib-1.2.7\win32\Makefile.gcc» равно правим строку #32 следующим образом:

Просто меняем «0» держи «1» .
2.4.4. Компилируем равным образом устанавливаем zlib-библиотеку:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» alias ConEmu равным образом набираем на консольном окне такие команды:

0.4.5. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая библиотечка «zlib1.dll» во «C:\Qt\MinGW\bin»
Статические «libz.a» равно накипь на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include»

< < Перейти ко содержанию

0.5. Компиляция равно регулирование JPEG библиотеки

Описание:
Официальный сайт: http://www.ijg.org/
Функции изо библиотеки libjpeg используются различными программами равным образом другими библиотеками про работы не без; форматами изображений «*.jpg», «*.jpeg» равно другими. Библиотека создана сообществом «Independent JPEG Group».

Сборка:
2.5.1. Скачиваем последнюю стабильную версию исходников библиотеки libjpeg, в пора написания статьи последняя сие v9: jpegsrc.v9.tar.gz
2.5.2. Распаковываем перекачанный картотека во папку «C:\Qt\build\Image», исходники библиотеки должны фигурировать во папке «C:\Qt\build\Image\jpeg-9».
2.5.3. Компилируем да устанавливаем JPEG-библиотеку:
Примечание: разве вас собираете библиотеку jpeg, ранней 0-ой версии (jpeg-9 alpha), в таком случае про корректной сборки должно воплотить в жизнь команду:

пизда конфигурированием, по-иному хорошенького понемножку наступать коллизия типов рядом компиляции (error: conflicting types for ‘jpeg_suppress_tables’).
Сейчас разработчики исправили сей недочет, следственно команду «autoheader» не грех неграмотный использовать.

Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе ConEmu равно набираем на консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вас нужны какие-то специальные параметры, в таком случае их всякий раз позволено переработать хуй конфигурированием. Список доступных опций дозволительно поглядеть выполнив команду

0.5.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая публичка «libjpeg-9.dll» да бинарные программы во «C:\Qt\MinGW\bin»
Статические «libjpeg.a» равно «libjpeg.dll.a» на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include»

< < Перейти для содержанию

0.6. Компиляция равно настройка PNG библиотеки

Описание:
Официальный сайт: http://www.libpng.org/pub/png/libpng.html
Библиотека libpng — сие официальная публичка на работы не без; растровой графикой на формате «*.png». Библиотека является платформо-независимой равно состоит с множества функций.

Сборка:
Внимание! Зависимости:
Библиотека zlib
Перед компиляцией библиотеки скомпилируйте равным образом установите до сей времени зависимости!
2.6.1. Скачиваем последнюю стабильную версию исходников библиотеки libpng, для пора написания статьи последняя трансформация 0.6.3: libpng-1.6.3.tar.gz
2.6.2. Распаковываем переписанный картотека на папку «C:\Qt\build\Image», исходники библиотеки должны взяться во папке «C:\Qt\build\Image\libpng-1.6.3».
2.6.3. Компилируем равным образом устанавливаем PNG-библиотеку:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» или — или ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вы нужны какие-то специальные параметры, так их завсегда не запрещается переработать на пороге конфигурированием. Список доступных опций позволительно рассмотреть выполнив команду

0.6.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Бинарные программы во «C:\Qt\MinGW\bin»
Статические «libpng.a» равно оставшиеся на «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include»
2.6.5. На этом прибор завершена. При желании дозволяется скомпилировать утилиту «pngtest.exe»:

Её включение выдаст на микроконсоль результаты тестирования файла «pngtest.png», находящегося во папке «libpng-1.6.3».

< < Перейти для содержанию

0.7. Компиляция равно регулирование TIFF библиотек

Описание:
Официальный сайт: http://www.remotesensing.org/libtiff/
LibTIFF — представляет на вывеску подбор библиотек равным образом утилит для того просмотра равным образом редактирования изображений формата «.tiff» alias «*.tif». Создана компьютерной компанией Silicon Graphics.

Сборка:
Внимание! Зависимости:
Библиотека zlib
Библиотека JPEG
Перед компиляцией библиотеки скомпилируйте равно установите постоянно зависимости!
2.7.1. Скачиваем последнюю стабильную версию исходников библиотеки libtiff, сверху одну секунду написания статьи последняя видоизменение 0.0.3: tiff-4.0.3.tar.gz
2.7.2. Распаковываем переписанный картотека на папку «C:\Qt\build\Image», исходники библиотеки должны взяться на папке «C:\Qt\build\Image\tiff-4.0.3».
2.7.3. Компилируем равным образом устанавливаем TIFF-библиотеки:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» alias ConEmu равным образом набираем во консольном окне такие команды:

Библиотека скомпилировалась от дефолтными параметрами. Если вас нужны какие-то специальные параметры, ведь их век позволено трансформировать предварительно конфигурированием. Список доступных опций не грех взглянуть выполнив команду

0.7.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамические библиотеки «libtiff-5.dll», «libtiffxx-5.dll» равным образом бинарные программы на «C:\Qt\MinGW\bin»
Статические «libtiff.a» равным образом прочие во «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include»

< < Перейти для содержанию

0.8. Компиляция равно прибор библиотеки FreeType 0

Описание:
Официальный сайт: http://www.freetype.org/
FreeType 0 — комната для того растеризации шрифтов равно операций по-над ними. Библиотека стократ упрощает операции обработки текста да используется в многих *nix-подобных системах.

Сборка:
Внимание! Зависимости:
Библиотека zlib
Перед компиляцией библиотеки скомпилируйте равно установите совершенно зависимости!
2.8.1. Скачиваем последнюю стабильную версию исходников библиотеки FreeType 0, для час написания статьи последняя разночтение 0.5.0.1: freetype-2.5.0.1.tar.gz
2.8.2. Распаковываем списанный картотека на папку «C:\Qt\build», исходники библиотеки должны составлять во папке «C:\Qt\build\freetype-2.5.0.1» .
2.8.3. Компилируем равно устанавливаем библиотеку FreeType 0:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» сиречь ConEmu равно набираем на консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вы нужны какие-то специальные параметры, ведь их век дозволено переработать прежде конфигурированием. Список доступных опций не запрещается вглядеться выполнив команду

0.8.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамическая помещение «libfreetype-6.dll» на «C:\Qt\MinGW\bin»
Статическая «libfreetype.a» да оставшиеся во «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\freetype2\freetype»

< < Перейти ко содержанию

0.9. Компиляция да настройка OGG библиотеки

Описание:
Официальный сайт: http://xiph.org/ogg/
OGG сие мультимедийный формат, представляющий с лица тара для того родных (нативных) файлов равно микроформат потока на различных мультимедийных кодеков. Формат OGG является потокоориентированным.

Сборка:
2.9.1. Скачиваем последнюю стабильную версию исходников библиотеки OGG, получи миг написания статьи последняя модифицирование 0.3.1: libogg-1.3.1.tar.gz
2.9.2. Распаковываем списанный картотека на папку «C:\Qt\build\Audio», исходники библиотеки да утилит должны являться на папке «C:\Qt\build\Audio\libogg-1.3.1» .
2.9.3. Компилируем равным образом устанавливаем библиотеку OGG:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» или — или ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась вместе с дефолтными параметрами. Если вы нужны какие-то специальные параметры, в таком случае их век дозволено реформировать предварительно конфигурированием. Список доступных опций допускается оценить выполнив команду

0.9.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамическая библиотечка «libogg-0.dll» на «C:\Qt\MinGW\bin»
Статическая «libogg.a» да другие на «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\ogg»

< < Перейти ко содержанию

0.10. Компиляция да узел OggVorbis (libVorbis) библиотеки

Описание:
Официальный сайт: http://www.vorbis.com
OggVorbis сие новоявленный параметры сжатия звука. Он почти сопоставим от другими популярными форматами, используемыми чтобы хранения равно воспроизведения нумерационный музыки, такими вроде MP3, VQF, AAC равным образом другими. OggVorbis отличается через других форматов тем, который спирт всецело бесплатный, гостеприимный равным образом спецификации кодека Vorbis относятся для общественному достоянию.

Сборка:
Внимание! Зависимости:
Библиотека OGG
Перед компиляцией библиотеки скомпилируйте да установите всегда зависимости!
2.10.1. Скачиваем последнюю стабильную версию исходников библиотеки OggVorbis (libVorbis), бери одну секунду написания статьи последняя модификация 0.3.3: libvorbis-1.3.3.tar.gz
2.10.2. Распаковываем перекачанный картотека во папку «C:\Qt\build\Audio», исходники библиотеки равно утилит должны бытийствовать на папке «C:\Qt\build\Audio\libvorbis-1.3.3».
2.10.3. Компилируем равным образом устанавливаем библиотеку OggVorbis (libVorbis):
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» или — или ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась из дефолтными параметрами. Если вас нужны какие-то специальные параметры, так их вечно позволено поменять преддверие конфигурированием. Список доступных опций не запрещается обозреть выполнив команду

0.10.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться во соответствующие папки:
Динамические библиотеки «libvorbis-0.dll», «libvorbisfile-3.dll» да «libvorbisenc-2.dll» на «C:\Qt\MinGW\bin»
Статические «libvorbis.a», «libvorbisenc.a», «libvorbisfile.a» равным образом другие во «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\vorbis»

< < Перейти для содержанию

0.11. Компиляция равным образом регулирование библиотеки FLAC

Описание:
Официальный сайт: http://xiph.org/flac/
FLAC расшифровывается в духе Free Lossless Audio Codec, таковой аудиоформат аналогичен формату MP3, а свертывание во нем происходит сверх потерь качества. Он работает близко ZIP, так из FLAC ваша милость возьмите несравнимо лучшее сжатие, потому что разработан некто был преднамеренно интересах звука. Из аналогичных кодеков FLAC выделяется тем, что такое? спирт малограмотный всего только самый быстрый, только покамест равным образом малограмотный являеющийся чей-либо собственностью, а поэтому никак не обременёный патентами. Кроме того, FLAC имеет открытые исходники эталонной реализации, здорово документированный размер равным образом API.

Сборка:
Внимание! Зависимости:
Библиотека OGG
Перед компиляцией библиотеки скомпилируйте да установите по сию пору зависимости!
2.11.1. Скачиваем последнюю стабильную версию исходников библиотеки FLAC, для пора написания статьи последняя разночтение 0.2.1: flac-1.2.1.tar.gz
2.11.2. Распаковываем списанный картотека на папку «C:\Qt\build\Audio», исходники библиотеки равно утилит должны бытовать во папке «C:\Qt\build\Audio\flac-1.2.1» .
2.11.3. Открываем обложка «C:\Qt\build\Audio\flac-1.2.1\include\share\alloc.h», равно заменяем строку #38 (# ifdef _MSC_VER) таковский строкой:

затем добавления сохраняем файл.
2.11.4. Открываем обложка «C:\Qt\build\Audio\flac-1.2.1\examples\cpp\encode\file\main.cpp», добавляем потом строки #32 (#include <stdlib.h>) такую строку (добавляем хэдер):

позднее добавления сохраняем файл.
2.11.5. Компилируем равным образом устанавливаем библиотеку FLAC:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе говоря ConEmu равно набираем во консольном окне такие команды:

Если вас нужны какие-то специальные параметры, ведь их всякий раз не запрещается переработать накануне конфигурированием. Список доступных опций позволено обозреть выполнив команду

0.11.6. Скомпилированные статическая библиотека, бинарные утилиты равно заголовочные файлы должны скопироваться во соответствующие папки:
Исполнительные бинарники «flac.exe» да «metaflac.exe» во «C:\Qt\MinGW\bin»
Статические библиотеки «libFLAC.a» равно «libFLAC++.a» на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\FLAC» да во «C:\Qt\MinGW\include\FLAC++»

< < Перейти ко содержанию

0.12. Компиляция да блок библиотеки MikMod

Описание:
Официальный сайт: http://mikmod.shlomifish.org/
Библиотека MikMod предназначена интересах работы от трекерной музыкой. Написанные особо в целях MS-DOS, плеер равно библиотека, спустя некоторое время были портированы возьми остальные платформы, такие как бы Unix, Macintosh, BeOS да Java.

Сборка:
2.12.1. Скачиваем последнюю стабильную версию исходников библиотеки MikMod, держи миг написания статьи последняя модифицирование 0.2.0: libmikmod-3.2.0.tar.gz
2.12.2. Распаковываем переписанный картотека на папку «C:\Qt\build\Audio», исходники библиотеки да утилит должны бытовать на папке «C:\Qt\build\Audio\libmikmod-3.2.0».
2.12.3. Открываем обложка «C:\Qt\build\Audio\libmikmod-3.2.0\drivers\drv_pipe.c», добавляем потом строки #33 такую строку:

позднее добавления сохраняем файл.
2.12.4. Открываем обложка «C:\Qt\build\Audio\libmikmod-3.2.0\playercode\mdriver.c», добавляем позднее строки #27 такую строку:

задним числом добавления сохраняем файл.
2.12.5. Компилируем да устанавливаем библиотеку MikMod:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» или — или ConEmu да набираем во консольном окне такие команды:

Библиотека скомпилировалась из дефолтными параметрами. Если вы нужны какие-то специальные параметры, так их во всякое время дозволительно реформировать пред конфигурированием. Список доступных опций не возбраняется осмотреть выполнив команду

0.12.6. Скомпилированная статическая библиотека, заголовочные файлы должны скопироваться на соответствующие папки:
Конфигурационный «libmikmod-config» на «C:\Qt\MinGW\bin»
Статическая библиотечка «libmikmod.a» на «C:\Qt\MinGW\lib»
Хэдер «mikmod.h» во «C:\Qt\MinGW\include»

< < Перейти для содержанию

0.13. Компиляция равно регулировка библиотеки MAD (libmad)

Описание:
Официальный сайт: http://www.underbit.com/products/mad
MAD (libmad) сие доброкачественный MPEG-audio декодер. В сегодняшний день сезон дьявол поддерживает MPEG-1 равно MPEG-2, а в свой черед микроформат MPEG 0.5. Все три аудио слоя — Layer I, Layer II равно Layer III (MP3) — шифратор поддерживает во полном объеме.
MAD сей поры невыгодный работает от многоканальным MPEG-2 звуком (хотя симпатия повинен оказываться совместим со потоком) равным образом безвыгодный поддерживает AAC.

Сборка:
2.13.1. Скачиваем последнюю стабильную версию исходников библиотеки MAD (libmad), в миг написания статьи последняя издание 0.15.1b: libmad-0.15.1b.tar.gz
2.13.2. Распаковываем переписанный картотека во папку «C:\Qt\build\Audio», исходники библиотеки равно утилит должны бытовать во папке «C:\Qt\build\Audio\libmad-0.15.1b».
2.13.3. Открываем обложка «C:\Qt\build\Audio\libmad-0.15.1b\configure» обычным текстовым редактором (я советую проэксплуатировать Notepad++) да находим строку #19102:

да удаляем ее вообще из переносами. То кушать чтоб строкой #19102 стала строка:

После модификации сохраняем файл.
2.13.4. Компилируем равным образом устанавливаем библиотеку MAD (libmad):
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» тож ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась не без; дефолтными параметрами. Если вас нужны какие-то специальные параметры, ведь их спокон века позволяется реформировать преддверие конфигурированием. Список доступных опций не грех отнестись выполнив команду

0.13.5. Скомпилированная статическая библиотека, заголовочные файлы должны скопироваться во соответствующие папки:
Статическая комната «libmad.a» во «C:\Qt\MinGW\lib»
Хэдер «mad.h» во «C:\Qt\MinGW\include»

< < Перейти для содержанию

0.14. Компиляция равным образом настройка библиотеки OpenAL

Описание:
Официальный сайт: http://connect.creativelabs.com/openal/
OpenAL или — или Open Audio Library, сие вольготно распространяемая кроссплатформенная библиотечка API ради работы вместе с аудиоданными. Ключевая редкость — служба со звуком во 0D пространстве равным образом утилизация эффектов EAX. Библиотека разработана фирмой Loki Software равно на истый поддерживается компанией Creative.

Сборка:
Внимание!
Для компиляции необходим
CMake
2.14.1. Скачиваем последнюю стабильную версию исходников библиотеки OpenAL, получи час написания статьи последняя разночтение 0.13: openal-soft-1.13.tbz2
2.14.2. Распаковываем переписанный картотека во папку «C:\Qt\build\Audio», исходники библиотеки равным образом утилит должны фигурировать во папке «C:\Qt\build\Audio\openal-soft-1.13».
2.14.3. Компилируем равно устанавливаем библиотеку OpenAL:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» тож ConEmu да набираем на консольном окне такие команды:

0.14.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы равно утилиты должны скопироваться на соответствующие папки:

< < Перейти для содержанию

0.15. Компиляция равно регулировка библиотеки ALUT (freealut)

Описание:
Официальный сайт: http://connect.creativelabs.com/openal/
Freealut сие незамужняя осуществление стандарта OpenAL’s ALUT.

Сборка:
Внимание!
Для компиляции необходим
CMake
Зависимости:
Библиотека OpenAL
Перед компиляцией библиотеки скомпилируйте равно установите до этого времени зависимости!
2.15.1. Скачиваем последнюю стабильную версию исходников библиотеки ALUT (freealut), получи время написания статьи последняя модификация 0.1.0: freealut-1.1.0.tar.gz
2.15.2. Распаковываем списанный картотека во папку «C:\Qt\build\Audio», исходники библиотеки равно утилит должны бытийствовать во папке «C:\Qt\build\Audio\freealut-1.1.0».
2.15.3. Компилируем равным образом устанавливаем библиотеку ALUT (freealut):
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе говоря ConEmu равно набираем во консольном окне такие команды:

0.15.4. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:

0.15.5. Компиляция равно запускание демо-кода.
2.15.5.1. Создаем обложка «alutdemo.c» во папке «C:\Qt\build\Audio», вставляем на него такое содержимое:

равно сохраняем.
2.15.5.2. Для компиляции заключение запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» равным образом набираем во консольном окне такие команды:

Данные команды скомпилируют адрес во неаккуратный обложка «alutdemo.exe», быть запуске которого ваша сестра услышите фразу «Hello, World!».

< < Перейти для содержанию

0.16. Компиляция равно монтаж cURL (libcurl) библиотеки

Описание:
Официальный сайт: http://curl.haxx.se/
Библиотека Libcurl — представляет внешне реализацию интерфейса API для того различных передач, которую программисты могут вделать на близкие программы. cURL действует на правах автономная обёртка к библиотеки libcurl.

Сборка:
Внимание! Зависимости:
Библиотека zlib (Опционально. Сборка возможна равным образом минуя нее.)
Библиотека OpenSSL (Опционально. Нужна с целью сборки библиотеки cURL чтобы git ‘a)
CMake (Опционально. Нужен ради сборки библиотеки cURL пользу кого git ‘a)
Перед компиляцией библиотеки скомпилируйте да установите безвыездно зависимости!
2.16.1. Скачиваем последнюю стабильную версию исходников библиотеки cURL (libcurl), в минута написания статьи последняя трансформирование 0.28.1: curl-7.28.1.tar.gz
2.16.2. Распаковываем переписанный картотека на папку «C:\Qt\build», исходники библиотеки равно утилит должны существовать на папке «C:\Qt\build\curl-7.28.1» .
2.16.3. Компилируем да устанавливаем библиотеку cURL:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе ConEmu равно набираем во консольном окне такие команды:

Если около конфигурации возникла ошибка:

Попробуйте отключить антивирус. Антивирусу «Avira Free Antivir» отнюдь не понравился сам изо тестовых исполнительных файлов, создаваемых закачаешься момент конфигурации.
Итак, библиотечка скомпилировалась вместе с дефолтными параметрами. Если вы нужны какие-то специальные параметры, так их завсегда дозволительно обновить до конфигурированием. Список доступных опций позволительно отнестись выполнив команду

0.16.4. Cборка библиотеки cURL пользу кого git ‘a со через CMake . Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» тож ConEmu равно набираем во консольном окне такие команды:

0.16.5. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы равным образом утилиты должны скопироваться во соответствующие папки:
Утилита «curl.exe», динамическая помещение «libcurl-4.dll» иначе говоря «libcurl.dll», если бы использовался CMake во «C:\Qt\MinGW\bin»
Статическая «libcurl.a» равно другие на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\curl»

< < Перейти ко содержанию

0.17. Компиляция равно сборка библиотеки libmodplug

Описание:
Официальный сайт: http://modplug-xmms.sourceforge.net/
Библиотека libmodplug предназначена с целью работы от трекерной музыкой. Является аналогом библиотеки MikMod.

Сборка:
2.17.1. Скачиваем последнюю стабильную версию исходников библиотеки libmodplug, для минута написания статьи последняя издание 0.8.8.4: libmodplug-0.8.8.4.tar.gz
2.17.2. Распаковываем списанный картотека на папку «C:\Qt\build\Audio», исходники библиотеки равным образом утилит должны существовать во папке «C:\Qt\build\Audio\libmodplug-0.8.8.4».
2.17.3. Компилируем равным образом устанавливаем библиотеку libmodplug:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе говоря ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась от дефолтными параметрами. Если вас нужны какие-то специальные параметры, так их вечно допускается реформировать накануне конфигурированием. Список доступных опций не запрещается глянуть выполнив команду

0.17.4. Скомпилированные статическая равным образом динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамическая здание «libmodplug-1.dll» на «C:\Qt\MinGW\bin»
Статическая «libmodplug.dll.a» равным образом накипь во «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\libmodplug»

< < Перейти ко содержанию

0.18. Компиляция да набор библиотеки равным образом утилит OpenSSL

Описание:
Официальный сайт: http://www.openssl.org/
OpenSSL — тайнописный пакетец (утилиты + библиотеки) вместе с открытым исходным кодом для того работы из SSL/TLS. Позволяет основывать непохожие ключи подобно RSA, DH, DSA равным образом сертификаты X.509, подписывать их, выковывать CSR да CRT. Кроме того есть мочь шифрования данных равным образом тестирования SSL/TLS соединений.

Сборка:
2.18.1. Скачиваем последнюю стабильную версию исходников библиотеки OpenSSL, для час написания статьи последняя вариант 0.0.1c: openssl-1.0.1c.tar.gz
2.18.2. Распаковываем перекачанный картотека во папку «C:\Qt\build», исходники библиотеки равным образом утилит должны составлять на папке «C:\Qt\build\openssl-1.0.1c».
2.18.3. Компилируем равно устанавливаем библиотеку OpenSSL:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» либо — либо ConEmu равным образом набираем на консольном окне такие команды:

Компилирование OpenSSL равным образом его установка, шабаш конца-краю нет процесс.
2.18.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы равно утилиты должны скопироваться на соответствующие папки:
Утилита «openssl.exe» во «C:\Qt\MinGW\bin»
Статические «libssl.a» да «libcrypto.a» во «C:\Qt\MinGW\lib»
Хэдеры на «C:\Qt\MinGW\include\openssl»

< < Перейти ко содержанию

0.19. Компиляция да регулирование библиотеки Expat

Описание:
Официальный сайт: http://expat.sourceforge.net/
Expat — сие незамужняя потокоориентированная здание парсинга интересах XML. Вотан с как никогда доступных XML парсеров, порядочно мешковато используется во открытом программном обеспечении.

Сборка:
2.19.1. Скачиваем последнюю стабильную версию исходников библиотеки Expat, держи мгновение написания статьи последняя вариант 0.1.0: expat-2.1.0.tar.gz
2.19.2. Распаковываем списанный картотека во папку «C:\Qt\build», исходники библиотеки да утилит должны взяться во папке «C:\Qt\build\expat-2.1.0».
2.19.3. Компилируем равным образом устанавливаем библиотеку Expat:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» иначе говоря ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась со дефолтными параметрами. Если вы нужны какие-то специальные параметры, в таком случае их спокон века позволительно реформировать пред конфигурированием. Список доступных опций позволено рассмотреть выполнив команду

0.19.4. Скомпилированные статическая да динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Динамическая здание «libexpat-1.dll» на «C:\Qt\MinGW\bin»
Статическая «libexpat.a» да прочие на «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include»

< < Перейти ко содержанию

0.20. Компиляция равно прибор библиотеки ZZIPlib

Описание:
Официальный сайт: http://zziplib.sourceforge.net/
ZZIPlib — сие легковесная книжное собрание чтобы работы со сжатыми файлами равно ZIP-архивами.

Сборка:
Внимание! Зависимости:
Библиотека zlib
Python 0.7.x (для сборки документации)
Перед компиляцией библиотеки скомпилируйте равно установите постоянно зависимости!
2.20.1. Устанавливаем Python во папку «C:\Qt\Python272».
2.20.2. Скачиваем последнюю стабильную версию исходников библиотеки ZZIPlib, сверху мгновение написания статьи последняя разночтение 0.13.62: zziplib-0.13.62.tar.bz2
2.20.3. Распаковываем списанный картотека во папку «C:\Qt\build», исходники библиотеки равно утилит должны существовать во папке «C:\Qt\build\zziplib-0.13.62».
2.20.4. Открываем обложка «C:\Qt\build\zziplib-0.13.62\configure», находим во файле строки:

равно заменяем на:

лишь двум таких строки.

0.20.5. Компилируем равным образом устанавливаем библиотеку ZZIPlib:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» alias ConEmu равно набираем во консольном окне такие команды:

Библиотека скомпилировалась из дефолтными параметрами. Если вас нужны какие-то специальные параметры, ведь их постоянно позволительно внести изменения прежде конфигурированием. Список доступных опций не возбраняется оценить выполнив команду

0.20.6. Скомпилированные статические библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
Статические «libzzip*.a» во «C:\Qt\MinGW\lib»
Хэдеры во «C:\Qt\MinGW\include\zzip»

< < Перейти ко содержанию

0. Интеграция MinGW вместе с IDE

Разрабатывать приложения, пользуясь консольной оболочкой, малограмотный по всем статьям привычно, ага равно выходить нужно на ногу со временем. Поэтому дружно вместе с нашим собранным тулчейном ваш покорнейший слуга рекомендую эксплуатнуть среду разработки QtCreator через Digia.
Среда равным образом позволит вас исследовать оконные приложения, используя мощнейший фреймворк Qt. Цена вопроса — 000-400 МБ к загрузки сборки лещадь MinGW. Зато удобств — максимум. В QtCreator принимать равно автодополнение стих равно настраиваемая подсветка, глотать ажно политическое устройство эмуляции vim, когда ваша милость полоз приближенно для нему привыкли.
Внешний облик QtCreator (изображение кликабельно):


Внешний обличие QtCreator

Установка довольно-таки проста:
1. Нужно запутать сборку библиотек Qt про MinGW (на миг написания статьи их последняя издание 0.8.4): [DOWNLOAD | СКАЧАТЬ] .
2. Установить библиотеки на «C:\Qt\qt-4.8.4», наладчик спросит тракт для компилятору, пристало означить «C:\Qt\MinGW», разве установитель ругнется получи и распишись хэдер, нисколько страшного, дозволяется продолжить.
3. Загрузить строго говоря самолично QtCreator (на минута написания статьи его последняя видоизменение 0.6.1): [DOWNLOAD | СКАЧАТЬ] .
4. Установить QtCreator во «C:\Qt\qtcreator-2.6.1».
5. Среда готова для написанию программ! Кстати, опричь удобного qmake, не без этого встроенная подпора CMake, да подле условии, что-то пишущий сии строки оный cmake установили.

Если у вам возникли проблемы по части установке, упрямо рекомендую сделать визит поразительный сайт http://qtlinux.narod.ru , с годами вас найдете небо и земля мануалы в соответствии с установке да тонкой настройки этой IDE.

< < Перейти ко содержанию

Dev , Manuals , Others

Установка MinGW/MSYS равным образом регулирование окружения в целях разработчика: 00 комментариев

  1. Спасибо следовать хорошую статью. Давно искал такую. Но возникли ошибки около сборке SDL_mixer. Сначала собрал весь зависимости Библиотека OGG
    Библиотека OggVorbis (libVorbis)
    Библиотека FLAC
    Библиотека MikMod
    Библиотека MAD (libmad)
    Строго по части инструкции. Все собралось хорошо, а гляди около сборке SDL_mixer возникли 0 Warning равно ошибки.

    Собирал по части Windows 0 04. Все пакеты последних версий. Прошу помоч.

    1. Попробуйте до сборкой исполнить во терминале следующее:
      export LDFLAGS=»-lpthread» иначе говоря LIBS=»-lpthread», требуется собраться.
      Если линковка достаточно успешной, уберите примежеванный полотнище командой:
      export -n LDFLAGS другими словами export -n LIBS

      Компиляция у вы проходит успешно, так комната libpthread отнюдь не подлинковывается.
      Если способом превыше никак не следовательно замыслить проблему, попробуйте пересобрать libmikmod, из экий а опцией во CFLAGS, равно поглядеть стараясь безвыгодный дать пройти ни слова получи и распишись опции, доступные до команде ./configure —help, вслед за тем хоть умри вкушать кое-что насчет многопоточность.

      Если вы никак не короче трудно, можете установить что-нибудь из-за версии mikmod равно SDL_mixer вам используете?

      1. Версия mikmod — 0.2.0, SDL_mixer — 0.2.12.
        Я по чести понял? Необходимо за вычетом тех инструкций, что-нибудь во описании приплюсовать -lpthread?, т.е. так:

          1. Ничего отнюдь не помогает :(. Не видит библиотеку pthread.a. да потом перекомпиляции от вышеуказанными параметрами равно со временем того, по образу пересобрал библиотеку mikmod c указанием LIBS=»-L/mingw/lib -lpthread». При конфигурировании указал параметр —enable-threads.

            Ошибка та же:

            Подскажите пожалуйста, наравне не выделяя частностей отключить библиотеку mikmod изо сборки SDL_mixer?

            1. Простите, невыгодный заметил, в действительности вас использовали MinGW (GCC 0.7.2). Так вот, не без; каждым повышением версии GCC, создается вагон проблем во кросскомпиляции каких-либо библиотек, сии проблемы нельзя не решать.
              Я крошечку выкроил для того вы времена да попробовал составить необходимую вы библиотеку.

              Путей в целях решения этой ошибки компиляции (линковки) автор вижу несколько.
              1. Полностью отключить библиотеку libmikmod изо сборки SDL_mixer, в качестве кого вам да сказали.
              Это делается баста элементарно, нужно сконфигурировать библиотеку SDL_mixer от опцией —disable-music-mod.

              0. Оставить поддержку медиа-файлов трекерной музыки, выключив многопоточность во библиотеке libmikmod. Это делается опцией —disable-threads подле ее конфигурировании.

              0. Оставить многопоточность на библиотеке, маленько изменив обложка Makefile.in во папке от исходниками SDL_mixer’a. На муж взгляд, сие самое оптимальное решение, взять оно равно требует наличествование дополнительной библиотеки «pthreadGC2.dll» на папке из программой.

              Я подготовил вы необходимые библиотеки на следующем архиве:

              Архив SDL_mixer’s.zip

              В нем вам сможете обнаружить однако три версии библиотеки, равно прибрать нужную. Помимо этого, во файлах «ReadMe.txt» описан дело компиляции каждой конфигурации, что поможет вы скомпилировать библиотеку не кто иной так, наравне ваш брат сего захотите. А на файле «SDL_mixer.txt» описана текущая расположение библиотеки.

              В папках «bin» ваша сестра можете встретить пунктуальный обложка «sdlwav.exe», некоторый использует сконфигурированные библиотеки. Перетащив получи него первый встречный гармоничный файл, для примеру трекерный «culture.mod» находяшийся затем же, вам сможете его очертить равным образом расценить проворство да качество. Заметьте, что такое? трекерная вербункош хорош воспроизводится лишь конфигурациями, на которых поглощать libmikmod (неважно, потоковая не ведь — не то нет).

              Помимо этого, во статью ваш покорный слуга добавил обрисовка процесса сборки пользу кого компилятора новой версии, к тому идет сие определение вы как и сможет помочь.

              Пункт 0.3.6.6.

              Благодарю после интерес.

              1. Спасибо огромное после уделенное ми время. Собралось однако нормально. Собрал тип идеже убирать libmikmod, однако малограмотный многопоточный. Единственная проблема: файлы *.flac отнюдь не хочет оказываться при пиковом интересе sdlwav, даже если возле перевелся SDL_mixer.dll. При этом файлы *.mp3 равно *.mod воспроизводятся да без участия SDL_mixer.dll. Как произвести статическую линковку? Чтобы весь форматы воспроизводились вне дополнительных *.dll.

                П.С. Никогда дотоле никак не слушал трекерную музыку. Признаюсь — впечатлило.

                1. Для того, ради сосредоточить неподвижный бинарник sdlwav, независящий с каких-либо библиотек, делать нечего чтобы начатки удостовериться, почто у всех нужных нам библиотек (SDL, SDL_mixer, vorbis, mikmod, итд) кушать собранные статические версии.
                  Обычно около дефолтном конфигурировании собираются вроде статические (lib.a), в такой мере равно динамические (lib.dll.a + lib.dll) библиотеки. Исключением является лишь только FLAC, библиотеки которого собраны только лишь динамически. Поэтому нам нуждаться переконфигурировать библиотеку не без; флагом —enable-static. После сего дозволено копить sdlwav со статической линковкой:

                  Компилятор объединение дефолту пытается подлинковать динамические библиотеки (lib.dll.a + lib.dll), да неравно пишущий сии строки ему откровенно укажем штандарт -static, ведь спирт полноте линковать всего-навсего статические (lib.a) библиотеки. Соответственно, нам нужно хорош автоматизированный адресовать безвыездно необходимое. Следует заметить, который метода линковки библиотек имеет значение.

                  Если однако готово правильно, так получи и распишись выходе автор сих строк получим самоуправляющийся аккуратный бинарник увеличившегося размера, обусловливающийся всего только ото системных библиотек Windows ( портрет ), и, ежели вас собирали многопоточную libmikmod, в таком случае уже да с «pthreadGC2.dll» ( картина ).

                  Пример сборки такого бинарника:
                  Скачать не без; 0Shared, ~5.0 Mb | Зеркало RGHost

                  1. Спасибо после полный ответ. Все собралось, до этого времени работает. Ваша дело аспидски полезная, особенно с целью людей впервинку сталкивающихся не без; компиляцией пакетов около MINGW (таких что моя особа :)). Чтобы до сей времени выправить информативность этой статьи добавлю 0 правки ото себя. В процессе разбора статьи равно сбора сборок столкнулся, вместе с тем в чем дело? помещение jpeg-9 про нормальной сборки требует нагнать команду autoheader предварительно конфигурированием. Для того, дай тебе библиотечка FLAC окей пересобралась из параметром —enable-static пришлось позднее конфигурирования реализовать команду make clean равным образом задним числом сызнова make. Ну равно во пункте 0.11.5 на строке
                    export LIBS=»-L/mingw/lib -lws_s32″ надобно переправить наименование библиотеки. Я пользу кого себя собирал только лишь SDL_image равным образом SDL_mixer. Если снег получи голову возникнут сложности от другими библиотеками — напишу комментарий. Прокомментируйте готов оный муж пост.
                    Еще единовременно спасибо.

                    1. Спасибо большое вслед исправления!
                      1. Заметка относительно jpeg-9 добавлена во статью.
                      2. Да, действительно, с целью переконфигурировать равным образом переустановить библиотеку, никуда не денешься облечь в тело и кровь следующее:

                      0. Опечатка вместе с -lws2_32 исправлена.

                      Еще крат несогласен из-за внимание.

  2. Отличная статья, спасибо.
    У меня возникла оплошка подле сборке libmikmod-3.2.0:
    make[2]: *** No rule to make target `strcasecmp.lo.o’, needed by `libmikmod.la’. Stop.
    make[1]: *** [all-recursive] Error 0
    make: *** [all] Error 0

    Решил правкой готового Makefile на папке libmikmod
    Заменил строку 03: LIBOBJS=${LIBOBJDIR}strcasecmp.lo$U.o в LIBOBJS=${LIBOBJDIR}strcasecmp.lo
    Но с какой радости такая опечатка появилась?

    1. Как-то фик-фок генерируются скрипты сборки. Увы, сие распространенная вопрос возле использовании компилятора MinGW равным образом окружения MSYS. Возможно баг кроется в среднем на confugure, крат симпатия генерирует анормальный Makefile. В общем, нужно смотреть.
      Какая у вам трансформирование MinGW?

        1. Ага, они обновили цветоустановщик равно подборка компиляторов. Странно то, ась? на первых порах их репозиторий третьего дня выдавал GCC 0.8.0, а ныне 0.7.2, видимо дьявол нонче нехорошо стабилен.

    1. Возможно пакеты во репозитории пока недоступны, попробуйте скопировать установку путем небольшую толику часов.
      И да, бери компьютере, слабо вам устанавливаете MinGW/MSYS всенепременно вынужден составлять ход во интернет.

  3. Спасибо ради интересную статью 🙂 пробую скопить pkg-config из флагом make -j9 (Phenom 0 ядер) в сущности монтаж изволь в одном ядре 😉 сам по себе гентушник, так потребовалось портировать замысел во win
    совершенно установщики последние в сегодня, pkg 0.28

      1. также, примеченный баг (на вин 0 х64) проверил весь пути, же

        0.3.1.4. Скомпилированные статическая равно динамическая библиотеки, заголовочные файлы должны скопироваться на соответствующие папки:
        Динамическая “SDL.dll” во “C:\Qt\MinGW\bin”
        Статические “libSDL.a”, “libSDL.dll.a” равно “libSDLmain.a” во “C:\Qt\MinGW\lib”

        далеко не копируются, создаются на локальных папках bin что такое? glut что-то sdl, впрочем, интересах теории выкопать на проводнике да ксеронуть до нынешний поры несложно, буду копать сколько не без; окружением, боюсь во реальном проекте бросьте заморочно. П.С. как ми видится , подле установке компилятора оставил «use local folder path» либо в чем дело? так что-то того, убедившись, сколько (в msys набирал make -j9)
        MAKEOPTS -j9 тож -O3 вешают процесс, думаю по части простому дефолту пробиться всю статью, затем копать сильнее детально. 🙂 проворно НГ равным образом масса времени 🙂

        1. А который версии у вам GCC во MinGW? Новые сборки MinGW, те которые содержат GCC версии 0.7.X/4.8.X, имеют какой-то необыкновенный MSYS. Лично у меня всё-таки до этого времени овчинка выделки стоит «mingw-get version 0.5-beta-20120426-1» из GCC версией 0.6.2, всегда работает просто-напросто отлично.

          Насчет вашей проблемы не без; аргументом «-jX» во утилите make заявить сносно безграмотный могу, зане у меня по сию пору работает без участия багов из любым аргументом.
          А вишь касаясь проблемы от локальными папками во GLUT равно SDL — посмотрите файлик « < Диск:\Путь поперед корня MinGW> \msys\1.0\etc\fstab», с годами должна состоять шитье « < Диск:\Путь накануне корня MinGW> /mingw» ежели её пропал — добавьте. Пример файла не запрещается позаимствовать с файла «fstab.sample». Заметьте, который на пути перед MinGW отнюдь не приходится присутствовать пробелов да русских символов.

          Если нужно, постараюсь выложить вас свою версию MinGW, когда-когда у меня короче подступ ко нормальному интернету.

              1. Кстати, реальные вопросы для адресок кажется $fdisk /dev/sda -p дают ссылку сверху директорию, заморочка на томишко ась? позднее ресета $ env-update && source /etc/profile пропадает 🙁 где-то однако ок, исключительно /source/etc/local.profile

          1. добавьте христа ради проверку наличия коректного fstab на зачаток топика, насчет «настройку окружения» , благодарствую

  4. эвентуально в флуд так сие неграмотный спирт )
    убирать трудящийся устройство стих , сотрудничающий на gentoo, может статься opengl-viewer-а не без; до черта самодельным форматом 0Д файлов, равно бог далеко не желание забивать член домашнюю систему вин, чем-то по-видимому VisualStudio, думаю логичнее скопить на toolchain в целевой платформе равно шелковица вставлять нежели пробовать оттестировать путем wine на gentoo а позже обломится подле запуске 🙂 либо списывать невыгодный имея опыта интересах win api

    //прохождение: ((win7x64 eng, регион\раскладка RU) @win — мышкой по части ярлыкам)

    @win mingw-get version
    @win аргумент среды «мой пк — пкм /свойства/доп параметры/переменные среды/ «PATH=C:/qt/mingw/bin»
    регулирование всего делов (пока), ~1.7Gb
    @win mingw installer
    @win «apply changes»

    учреждение /mingw/msys/etc/fstab
    по части умолчанию убирать fstab.samples

    # /mingw

    C:\qt\MinGW /mingw
    C:/qt/MinGW /mingw
    меня смущают небо и земля углы наклона «сиди косая» все еще пробую так, ес двум строки… безвыгодный возмущается вообще,

    пуск msys.bat

    0.1.2

    0.2 пропускаю,

    учредить папку /c/qt/build/pkg-config-0.28 , @win распаковка tar-а на /c/qt/build

    //msys безразличен номенклатура букв во пути, ась? в свою очередь настораживает//

    0.3….

    от «выпрямленными» путями path на win (у меня тама cmake не без; веб-инсталлера прописался) у меня неточный маршрут для машине (не пелена накопить «этафигня@t3850» о—оооо 🙁 )

    (КСТАТИ, в дальнейшем неудачного прохождения данного квеста, аэрозоль стеснить папки возьми C:/qt/mingw/… всего только из-под gentoo root —

    затем «перезагрузки виндоус» , выдавало, сколько никак не хочет отводить папку, т.к. файлы используются к git да svn

    $export CFLAGS=»-march=native»
    $cd /c/Qt/build/pkg-config-0.28
    $./configure —with-internal-glib —prefix=/mingw
    $make
    $make install
    $export -n CFLAGS

    0.3.4, успешно.

    0.4.1

    C:\Qt\build\CMake 0.6

    0.5 svn

  5. Здравствуйте! Долго плясал округ установки freetype, советы на инете пополнить gcc 🙁 оказалось малограмотный коректно собирается zlib, же «mingw-get show | grep «Package: » » ставит «get mingw-zlib» неизвращенный zlib, на общем чудесно, нонче пробую получи работе равно в родных местах сосредоточить установленный born shell получай разных пк

    1. А аз многогрешный из freetype что-то около да невыгодный разобрался… Пробовал компилить zlib равно как статическую, беспричинно равным образом динамическую… Пробовал компилить cmake’ом… Пробовал пускать в дело стандартную mingw32-zlib… по сию пору одинаково рядом компиляции freetype-2.5.0 погрешность в ссылающийся с zconf.h обложка io.h (io.h:301:1: error: unknown type name ‘off64_t’). Пробовал переопределять образец в духе long long (в stdio.h эдак тайпдефится). Если кто именно сталкивался — подскажите гораздо копать. неграмотный обнавлять а халтурщик

    2. Кстати, присутствие конфигуре freetype вместе с ключиком —without-zlib (для использования встренного в фритайп) наворот такая же. Поэтому у меня начинают происходить сомнения, который деятельность на zlib

  6. Здравствуйте, у меня такая ситуация.
    Имеется писатель не без; некого языка программирования что транслирует на СИ равным образом скармливает дальше GCC (реально, сие какой-то MinGW-подобный огрызок), который,в свою очередь, выступает в качестве кого кросс-компилятор по-под какую-то после этого платформу. Такой вишь своеобычный бэк-енд.
    Он позволяет сочинять приманка модули получи и распишись Си, сочинять да линковать их на одном проекте, смешивая двум языка программирования — удобная фича.
    В программе неймется эксплуатировать анонимные структуры, на GCC они включаются опцией: «-fplan9-extensions». Поскольку по всем статьям процессом сборки управляет отечественный бэк-енд, тот или иной слыхом отнюдь не слыхивал ни об каких расширениях, возникает вопрос: вроде привнести сие расширение.
    Может на GCC принимать какой-то конфигурационный обложка идеже дозволено адресовать желаемые сообразно умолчанию опции, либо — либо направить их во исходных кодах?
    Помогите!

    1. День добрый. Интересная проблема. Я эдак понимаю, доступа ко backend’у, идеже крутится отчего-то GCC-образное нету? Или а данный backend малограмотный знает относительно такого типа опции вообще? Если последнее, так правильнее общей сложности нужно бы нынешний backend обновить. Вроде оный а LLVM/Clang может на «-fplan9-extensions/-fms-extensions», новые MinGW, думаю тоже. Если ко backend’у позволительно пробраться, ведь нужно разобраться на правах некто тама взаимодействует от тем, что-то ему пересылает ваш компилятор, равно просто-напросто приплюсовать нужный флажок.

      Про конфигурирование GCC не без; через файлов ничего, увы, неграмотный слышал. А видишь от пробросом определённых опций изо исходных файлов сталкивался, например, тут: drd_clientreq.c#L75 . При обработке сего файла программа убавляет ординар оптимизации впредь до первого. Возможно некогда равно plan9-extensions не возбраняется подобным образом пробросить, нечто вроде:

      __attribute__ ( ( transparent_union ) )

  7. За наводку бери __attribute__ спасибо, попробую. Мой «бэк-енд» — сие транслятор из языка функциональных диаграмм (FBD), общо говоря сие вешь на себе, предназначенная пользу кого программирования микроконтроллеров. Копатся на нем — вопрос слабо не в такого склада степени практичная, нежели несложно быть минус любимых моих фич во си. (он на худой конец равным образом генерирует си-код, да бог нискоуровневый, примем совершенно переменные представлены во виде смещений через базового адреса, равным образом тд…) походу спирт в рассуждении чем-то в дочери годится (с99) равно невыгодный слышал. Да да об этом так стандарте, в свою очередь — наврятли. Соотношение — удобство/трудозатраты шелковица безвыгодный во мою пользу абсолютно. Сейчас попробую «attribute», отпишусь в отношении результатах.

  8. Проблема следующего характера: малограмотный работает комната XAudio2 изо DirectX9.
    Как пишущий эти строки понял, трудность во том, что-то пропал файла sal.h, некоторый снедать во вижаке.
    При попытке найти Windows SDK нате win7 вылетает ошибка. На сильнее старой версии Windows SDK файла sal.h не мудрствуя лукаво нет.
    Зато держи семерку установился во папку Windows SDK на win8.1, равно тама глотать настоящий бедственный обложка равно единаче одиночный требуемый хэдер.
    Бросил сии хэдеры на /c/MinGW/include/
    Но тем безвыгодный не в таковский степени звуковая помещение этак равно никак не встала.
    Выдает ми какой-то точный завершение на консоли, для лишение файла sal.h что-то сильнее малограмотный ругается, так моя особа подозреваю, работа во том, что-то обложка безвыгодный тот.
    В общем. Плакать хочется.
    p.s. вижака, разумеется, у меня нет, оттого ваш покорнейший слуга равно тутовник 🙂

    1. Насколько ми известно, компаундировать студийные хедеры да хедеры MinGW — здорово плохая идея. Попробуйте программа MinGW-w64 , теперь дьявол несравнимо актуальнее обычного MinGW. Там есть sal.h равным образом совершенно оставшиеся заголовочные файлы:

      sal.h header

  9. EXL , а безграмотный планируется, случайно, подобного материала, только на современных реалиях?
    С самого первого шага сложности. Начиная с отсутствия mingw-get, да заканчивая «/usr/bin/env perl: No such file or directory».
    Установил ручной особняком MinGW после mingw-w64-install.exe
    Установил розно MSYS2 (туда же, куда ни на есть равно MinGW, они имеют непересекающиеся файлы, только фрейм поддиректорий говорит то есть что до том, аюшки? приблизительно хорош правильно)
    Прописал во переменную PATH конец ко X:\path\mingw\migw64\bin
    Прописал на переменную PATH конец для perl
    Перл работает, команды принимает, всё хорошо. perl -v, perl -V — всё отлично.
    gcc -v — всё отлично, 0.3.0
    Запускаю msys2_shell.cmd — запускается bash, хорошо.
    /usr/bin/env — меню переменных, всё неплохо все еще ещё…
    ./configure —with-internal-glib —prefix=/mingw запускается, равно помощью малость секунд configure: error: no acceptable C compiler found in $PATH, быть этом gcc находится сходу изо любого места да находится дьявол там, идеже необходимо — на директории со mingw64\bin
    Попытка №2, пробуем настроить OpenSSL: /usr/bin/env: «perl»: No such file or directory

    В общем, ни на какую.

    1. Привет.

      Информация во статье порядочно устарела. Всё-таки развивается сие всё быстрыми темпами. Я бы порекомендовал попользоваться msys2.github.io , тама поглощать вделанный групповой начальник вроде на дистрибутивах Linux’а, благодаря тому регулировка OpenSSL равно Perl сводится ко банальному pacman - S openssl perl .

      Или вы нужно то есть скомпилировать OpenSSL со своими «твиками»?

Добавить объяснение