qmake e QT_INSTALL_PREFIX. Come faccio a selezionare una nuova posizione per la libreria Qt?

StackOverflow https://stackoverflow.com/questions/913642

  •  06-09-2019
  •  | 
  •  

Domanda

Sono nuovo di qmake e sto cercando di costruire un'applicazione esistente. Qt è stato originariamente installato in /usr/local/lib/Qt-4.3.5 e 'qmake -query QT_INSTALL_PREFIX' restituisce quel percorso.

Ho spostato la libreria Qt in un'altra posizione ed i Makefile generati sono condito con il percorso / usr / local originale.

Come posso forzare qmake di utilizzare la nuova posizione Ho selezionato senza ricompilare Qt?

È stato utile?

Soluzione

Si tratta di un 'incorporato' compilato in qmake da qconfig.cpp. Il modo migliore è quello di riconfigurare Qt con un altro -prefix e ricostruire purtroppo. Per la maggior parte le altre variabili, è possibile utilizzare un file .qmake.cache. Vedere

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

Per ulteriori informazioni

Altri suggerimenti

che cercavo in questo e trovato un modo che funziona (in 4.7.2 qt) personalizzando qt con un file qt.conf.

Nel mio caso, ho aggiunto un qt4-4.7.2/bin/qt.conf (Deve essere nello stesso luogo come l'eseguibile qmake)

Con i seguenti contenuti:

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

e il -query qmake iniziato restituzione dei percorsi corretti!

See: http://doc.qt.io/qt-4.8/qt-conf.html per maggiori dettagli


[Aggiornamento:] Dal momento che almeno Qt 5.3.1 (testato con le versioni statiche di 5.3.1 e 5.5 su Windows 8) si può semplicemente fare

[Paths]
Prefix = ..

e distribuire l'installazione di Qt da nessuna parte.

Come sottolineato da Henrik Hartz, QT_INSTALL_PREFIX è built-in e non può essere modificato. Tuttavia, se si desidera solo per aggirare dover ricostruire temporaneamente Qt, allora si può provare il seguente:

qmake Query per la sua installazione prefisso, ricreare la struttura di directory riportato, e utilizzare un collegamento simbolico o hardlink al punto in cui la versione Qt trasferito è. Per esempio. su Linux

  • ottenere il percorso riportato da /new/Qt/location/bin/qmake -query QT_INSTALL_PREFIX. Dite questo riporta /Parent/Dirs/Prefix.
  • Crea le directory principali del percorso, ad esempio, mkdir -p /Parent/Dirs/
  • link simbolico a nuova posizione, ad esempio, ln -s /new/Qt/location /Parent/Dirs/Prefix

È possibile che questo può essere anche utile se si dispone di un gruppo di sviluppatori che hanno bisogno di lavorare con la stessa versione di Qt precompilati, dove questa versione Qt non è necessariamente copiato lo stesso percorso su computer tutti gli sviluppatori, e dove avete solo bisogno di raggruppare le librerie Qt condiviso con voi l'applicazione per gli utenti finali (cioè non saranno trasporto intestazioni o costruire strumenti).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top