Установка 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++ .
Для распаковки содержимого архивов дозволяется воспользоваться консольные команды alias архиваторы со 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 или — или 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» либо 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» alias 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» либо — либо «*.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» сиречь 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» alias 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 alias 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» или — или 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 со своими «твиками»?

Добавить прочтение