Come aggiungere il percorso di inclusione in Qt Creator?


160

Ho un progetto a cui sto lavorando in Qt Creator che richiede una libreria di terze parti. Voglio aggiungere le intestazioni al percorso di inclusione per il progetto. Come faccio a fare questo?

Risposte:


232

Se si utilizza qmake, il sistema di generazione Qt standard, è sufficiente aggiungere una riga al .profile come documentato nel riferimento alla variabile qmake :

INCLUDEPATH += <your path>

Se si utilizza il proprio sistema di compilazione, si crea un progetto selezionando "Importa di progetto basato su Makefile". Ciò creerà alcuni file nella directory del progetto, incluso un file denominato <your project name>.includes. In quel file, elenca semplicemente i percorsi che vuoi includere, uno per riga. Tutto ciò che fa è dire a Qt Creator dove cercare i file da indicizzare per il completamento automatico. Il tuo sistema di compilazione dovrà gestire i percorsi di inclusione a modo suo.

Come spiegato nel manuale di Qt Creator , <your path>deve essere un percorso assoluto, ma è possibile evitare voci specifiche del sistema operativo, dell'host o dell'utente nel .profile utilizzando il $$PWDriferimento alla cartella che contiene il .profile, ad es.

INCLUDEPATH += $$PWD/code/include

2
Va bene. Questo funzionerà per me bene. Esiste un'impostazione globale per i percorsi di inclusione?
Nathan Osman,

Non che io sappia, ma ciò non significa che non lo sia. Non vedo nulla nelle opzioni che sembrano così.
Jason B,

3
Non importa. La tua risposta menziona INCLUDE_PATHma intendevi INCLUDEPATH. Risolverò la tua risposta :)
Nathan Osman,

6
È meglio usare QMAKE_CXXFLAGSinvece le variabili, perché INCLUDEPATHè buggy (almeno al momento - QT5). Vale a dire quando ho incluso INCLUDEPATH += ../../../, il QT ha scelto casualmente la directory in questo percorso e il compilatore ha ottenuto l'opzione -I../../../GUI.
Ciao Angelo

4
@ Hi-Angel: Sembra che il INCLUDEPATHspecificato sia relativo alla directory di compilazione, non alla directory con quella .proche si potrebbe facilmente supporre. Come mostrato nella mia modifica alla risposta, puoi usare `$$ PWD 'per ottenere una cartella chiaramente definita con cui iniziare il percorso di inclusione.
ssc,

6

Per aggiungere il percorso di inclusione globale utilizzare il comando personalizzato per qmake nella sezione Progetti / Build / Build Steps in "Argomenti aggiuntivi" come questo: "QT+=your_qt_modules" "DEFINES+=your_defines"

Penso che puoi usare qualsiasi comando dai file * .pro in quel modo.


5

Per chiunque sia completamente nuovo su Qt Creator come me, puoi modificare il file .pro del tuo progetto da Qt Creator:

inserisci qui la descrizione dell'immagine

Basta fare doppio clic su "nome del progetto" .pro nella finestra Progetti e aggiungere il percorso di inclusione nella parte inferiore del file .pro come ho fatto.


5
L'uso di percorsi di file assoluti è una pessima idea. Cerca sempre di utilizzare il relativo sistema di percorsi dei file. QT è progettato per essere multipiattaforma. E se compili lo stesso codice su una macchina Linux, il compilatore non riuscirà a trovare quei nomi di file come C: \ Inoltre, anche se rinomini la cartella di origine o la sposti da qualche altra parte sul tuo computer, fallirà comunque e tu dovrà modificare il file .pro ogni volta
Shivam Jha

0

Se usi Makefile personalizzati, puoi fare doppio clic sul file .includes e aggiungerlo lì.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.