Как сказал Исмаил, на Qt нет шага установки для Windows.
Однако можно попытаться приблизить его, выполнив следующие операции.
- Очистка
Запустите make clean
в папке сборки, чтобы удалить все временные файлы.
- Moving
Скопируйте папку сборки в то место, где вы хотите "установить" Qt. Давайте назовем это INSTALL_DIR
.
- Исправление путей, жестко закодированных в
qmake.exe
исполняемом файле
Запустите qmake -query
, чтобы увидеть, какие пути скомпилированы (жестко запрограммированы) в qmake и
а. Исправьте пути, содержащие папку сборки, заменив ее на INSTALL_DIR
, используя qmake -set
(1).
или
б. Создайте файл qt.conf
во вложенной папке bin INSTALL_DIR
, указав в нем новые пути Qt.
- Добавление текущего каталога для включения пути
В предоставляемых Qt бинарных дистрибутивах pwd включен в QMAKE_INCDIR
и, таким образом, заканчивается в ваших проектах, включая путь как ".". Это не происходит по умолчанию в пользовательском Qt, поэтому вам нужно добавить следующую строку в файл mkspecs/YOUR-PLATFORM-HERE/qmake.conf
:
QMAKE_INCDIR += "."
- Исправление
prl
файлов
Когда вы добавляете компонент Qt в файл проекта (например, CONFIG += uitools
), Qt просматривает %QTDIR%/lib/QtUiTools.prl
, чтобы найти библиотечные зависимости этого компонента. Эти файлы будут иметь жестко заданный путь к каталогу, в котором Qt был сконфигурирован и собран. Вы должны заменить этот каталог сборки на тот, куда вы переместили Qt, для всех файлов lib/*.prl
.
- Обеспечение доступности источника
Если вы создали теневую сборку (сборку, выполненную в папке, отличной от источника, который связан с источниками), заголовки в подпапке include
только пересылают к исходным заголовкам. Например; BUILD_DIR\include\QtCore\qabstractanimation.h
выглядит так
#include "SRC_DIR/src/corelib/animation/qabstractanimation.h"
Если вы не хотите зависеть от существования папки, содержащей источники, вам необходимо скопировать подпапку SRC_DIR/src
в папку назначения и исправить все заголовки в папке include
, чтобы они перешли на новое местоположение src
вложенная.
Суть:
Процесс сборки Qt под Windows делает действительно неудобным перемещение (установку) Qt после сборки. Ты должен делать это только в том случае, если ... ну, я не могу найти вескую причину, чтобы пройти через все эти проблемы
Помните
Самый простой способ - поместить исходники Qt в папку, где вы хотите, чтобы Qt оставался после сборки, и сделать сборку в этой папке. Это делает все шаги, кроме 1 и 4 выше, ненужными.
1)
Переменные, которые вы установили с помощью qmake -set
, сохраняются в разделе реестра
HKEY_CURRENT_USER\Software\Trolltech\QMake\<QMAKE_VERSION>
.
Из-за этого у вас может возникнуть проблема, когда вы хотите иметь разные проекты, использующие разные версии Qt, которые имеют одинаковую версию qmake. В этом случае лучшим решением будет использование файла qt.conf
(на самом деле это файлы, так как вам нужен один файл для каждой установки Qt) (опция 3b).
Многие из вышеприведенной информации взяты с RelocationTricks вики-страницы, созданной Гейбом Руди. Посмотрите его Qt (Qt4) Opensource Windows Installers предварительно собранных двоичных файлов с MSVC 2008 , который дает вам простое решение вышеуказанных проблем.