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

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


MinGW/MSYS равно QtCreator

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

Содержание:

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

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

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

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

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

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

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

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

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

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


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

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


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

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

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

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

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


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

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


Переменная PATH

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

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

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

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

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

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

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


Стандартное пространство MSYS тулчейна MinGW

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


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

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

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

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

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

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

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

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

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

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

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

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

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


Установка CMake

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


Установка CMake

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

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

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

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

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

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

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

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

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

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

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

Error running link command : No such file or directory

Подробнее позволительно перелистать тут: CMake Cross Compiling

0.4.3 Что боготворить ради CMake? (литература):
Из в особенности полезного:

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

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

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

Официальный сайт svn: http://subversion.apache.org/
Subversion тож 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»), alias во выводе рента будут показаны доступные декодеры равно их количество. Для нашей конфигурации 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» другими словами 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» alias ConEmu равно набираем во консольном окне такие команды:

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

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

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

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

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

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

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

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

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

0.10. Компиляция равно блок OggVorbis (libVorbis) библиотеки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

затем добавления сохраняем файл.
2.12.5. Компилируем да устанавливаем библиотеку MikMod:
Запускаем «C:\Qt\MinGW\msys\1.0\msys.bat» alias 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» alias 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 (неважно, потоковая alias нет).

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

              Пункт 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

  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 со своими «твиками»?

Добавить освещение