qmake et QT installent le préfixe. Comment puis-je choisir un nouvel emplacement pour la bibliothèque Qt?

je suis nouveau à qmake et j'essaie de construire une application existante. Qt a été installé à l'origine dans /usr/local/lib/Qt-4.3.5 et 'qmake-query QT_INSTALL_PREFIX' renvoie ce chemin.

j'ai déplacé la bibliothèque Qt à un autre endroit et les Makefiles générés sont empilés avec le chemin original /usr/local.

comment forcer qmake à utiliser le nouvel emplacement que j'ai choisi sans recompiler Qt?

17
demandé sur David S. 2009-05-27 06:15:38
la source

3 ответов

c'est un' builtin ' compilé dans qmake à partir de qconfig.rpc. La meilleure façon est de reconfigurer Qt avec un autre préfixe et reconstruire malheureusement. Pour la plupart des autres variables, vous pouvez utiliser un .qmake.fichier de cache. Voir

http://doc.qt.digia.com/qt/qmake-environment-reference.html

pour plus d'information

9
répondu Henrik Hartz 2013-01-17 00:21:47
la source

j'étais en train d'étudier cela et j'ai trouvé un moyen qui fonctionne (dans qt 4.7.2) en personnalisant qt avec un fichier qt.conf .

dans mon cas, j'ai ajouté un qt4-4.7.2/bin/qt.conf (il doit être au même endroit que le qmake exécutable)

avec le contenu suivant:

[Paths]
Prefix = c:/my_path/to/qt4-4.7.2

et la requête qmake a commencé à retourner les bons chemins!

voir: http://doc.qt.io/qt-4.8/qt-conf.html pour plus de détails


[mise à jour:] depuis au moins Qt 5.3.1 (testé avec les versions statiques de 5.3.1 et 5.5 sur Windows 8), Vous pouvez tout simplement faire

[Paths]
Prefix = ..

et déployer l'installation Qt n'importe où.

34
répondu Fabio Zadrozny 2015-08-14 10:00:05
la source

comme L'a souligné Henrik Hartz, QT_INSTALL_PREFIX est intégré et ne peut pas être modifié. Cependant, si vous voulez juste travailler autour d'avoir à reconstruire Qt temporairement, alors vous pouvez essayer ce qui suit:

interrogez qmake pour son préfixe d'installation, recréez la structure de répertoire signalée, et utilisez un lien symbolique ou un lien dur vers L'endroit où se trouve la version QT déplacée. Par exemple: sous Linux

  • Obtenir le chemin d'accès signalé par /new/Qt/location/bin/qmake -query QT_INSTALL_PREFIX . Dites ces rapports /Parent/Dirs/Prefix .
  • créer un répertoire parent du chemin, p.ex. mkdir -p /Parent/Dirs/
  • lien symbolique vers un nouvel emplacement, p.ex. ln -s /new/Qt/location /Parent/Dirs/Prefix

ce qui précède peut également être utile si vous avez un groupe de développeurs qui ont besoin de travailler avec la même version prébuilée de Qt, où cette version de Qt n'est pas nécessairement copiée sur le même chemin sur tous les ordinateurs des développeurs, et où vous n'avez besoin de regrouper les libs QT partagés avec vous application pour les utilisateurs finaux (c.-à-d. Vous ne serez pas expédier des en-têtes ou des outils de construction).

2
répondu Rob 2011-07-28 15:20:30
la source

Autres questions sur