Показаны сообщения с ярлыком qt. Показать все сообщения
Показаны сообщения с ярлыком qt. Показать все сообщения

четверг, 22 ноября 2012 г.

Сборка QT 4.8.4 под VS2012

Очередная ссылка на просторах инета посвященная этому увлекательному процессу.
Больше для себя, но может будет кому-то полезна.

На данный момент текущая версия QT 4.8.4. 
Последовательность сборки (все указанные ссылки могут меняться со временем):
  1. Забираем исходники, можно забрать со странички загрузок qt-project, но лучше потратить немного времени, если не установлен git и установить TortoizeGit и необходимый для него msysGit. Далее клонировать хранилище с текущей версией QT: git://gitorious.org/qt/qt.git.
  2. Устанавливаем переменные среды следующим образом:
  3. QTDIR=<Каталог куда мы клонировали хранилище QT(например: C:\QT\4.8.4)>
  4. QMAKESPEC=win32-vs2012
  5. Добавляем в PATH %QTDIR%\bin (кстати, для этого есть отличная утилита, которая заодно позволит привести PATH в порядок Path Editor)
  6. Теперь перед сборкой необходимо внести некоторые изменения, без которых сборка завершится с ошибкой (обсуждение ошибки на оффоруме). Для меня подошел последний приведенный вариант патча. Находим файл: C:\work\lib\src\qt-4.8.4vs11-32\src\3rdparty\webkit\Source\JavaScriptCore\wtf\HashSet.h и заменяем его содержимое. UPD: ни один из приведенных по ссылке патчей не является рабочим. Но тем не менее сборка завершается корректно, и полученные библиотеки можно использовать без WebKita. UPD2: патч отсюда тоже не работает для меня.
    ВНИМАНИЕ!!! Файл не должен быть изменен с момента создания этого поста, или необходимо учесть внесенные изменения.
  7. Далее запускаем командную строку VS2012, я делаю это запуская студию и далее Сервис / Командная строка Visual Studio.
    Либо можно выполнить команду: cmd.exe /K vcvars32.bat в каталоге <каталог куда установлена VS2012>\VC\bin (у меня это C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin)
  8. Переходим в каталог QT: cd %QTDIR%
  9. Запускаем: configure -debug-and-release -mp -no-qt3support -nomake examples -nomake demos (в данном варианте собираются сборки для отладки и релиза, флаг -mp позволяет компилятору VS запустить сборку в несколько потоков, полный список опций можно посмотреть запустив configure -help, также описание опций можно найти здесь)
    Дополнительно, для того чтобы не устраивать бардак желательно указать каталог в который будет установлена сборка: например -prefix C:\QT\bin\4.8.4
    В случае добавления префикса необходимо создать целевой каталог и скопировать в него каталог mkspecs из исходного каталога.
  10. После запуска выбираем 'o' - opensource вариант и 'y' - соглашаемся с лицензией.
  11. Через некоторое время, по ощущениям примерно 30 минут configure закончит свою работу и можно будет запустить nmake, и прождав около пяти часов мы получаем готовую сборку.
  12. Если был указан префикс, то после окончания сборки необходимо запустить команду nmake install, после чего скорректировать переменную %QTDIR% таким образом, чтобы она содержала путь указанный в префиксе. Исходный каталог для экономии места можно будет удалить. 
На этом все.