2013-08-24 15 views
18

ho due percorsi che voglio Xcode per la ricerca di intestazioni:utente Header percorsi di ricerca per Xcode

"/ myproject/lib1/include"
"/ myproject/lib2/include"

Qual è la sintassi corretta per l'aggiunta di questi due percorsi all'interno dei percorsi di ricerca dell'intestazione dell'utente Xcode? Ho provato "/ myproject/lib1/include"; "/ myproject/lib2/include"

Ma non ha funzionato. Si è lamentato che object1.h non è stato trovato. object1 is inside/myproject/lib1/include

Ho già aggiunto l'intera cartella/myproject/lib1/include e/myproject/lib2/include al progetto di destinazione.

+0

In che modo non ha funzionato? Che errore hai ottenuto? Quando dici "Percorsi di ricerca delle intestazioni degli utenti Xcode", cosa intendi? Nel progetto? Nell'obiettivo? Dove? Si prega di aggiungere alcuni dettagli su ciò che hai provato e quale fosse il risultato. – user1118321

+0

^guarda sotto le impostazioni di build c'è una sezione chiamata Percorsi di ricerca delle intestazioni degli utenti. – lilzz

+0

Sì, c'è un paio di volte. L'hai impostato per il progetto o l'obiettivo? – user1118321

risposta

24

Dd hai effettivamente messo il leader/nel percorso? Perché quello è un percorso assoluto e probabilmente non è quello che intendi.

È possibile passare la posizione relativa utilizzando $(SRCROOT) che espande la directory contenente il file di progetto Xcode.

Quindi, supponendo che il file di progetto si trova nella directory myroject si dovrebbe mettere questo nei vostri percorsi di ricerca di intestazione:

$(SRCROOT)/lib1/include 
$(SRCROOT)/lib2/include 
+1

lo spazio di immissione del percorso di ricerca dell'intestazione ha solo una linea. Hai bisogno di metterli tra virgolette? e punto e virgola come separatore? – lilzz

+0

Mettine uno su ogni linea. – Abizern

+1

sì, l'ho fatto. e quando si è espanso, sembra proprio il mio percorso assoluto. è la stessa cosa. si lamenta ancora di non poter trovare object1.h quale cartella interna/lib1/include. Anche se aggiungo l'intera cartella include al progetto di destinazione, ma non vedo l'appartenenza di destinazione quando ho fatto clic con il tasto destro sulle sue proprietà.Questo mi fa chiedere se object1.h sia stato veramente aggiunto al target. Non voglio aggiungere un file .h a destinazione contemporaneamente, voglio aggiungere tutto ciò che è contenuto nella cartella include to target. – lilzz

3

Se si dispone di più percorsi di intestazione, utilizzare lo spazio a dividerli, o fare doppio clic l'ingresso casella di testo dei percorsi dell'intestazione per l'impostazione anticipata. Un altro modo consigliato è la ricerca "Percorsi ricerca intestazione utente" nel menu Guida di Xcode.

6

si supponga di voler utilizzare la directory del progetto, quindi si dovrebbe utilizzare:

"$PROJECT_DIR" 

virgolette doppie sono consigliato se il percorso del progetto ha spazi.

Abilita ricorsivo se si desidera cercare anche all'interno delle cartelle. In alternativa, è possibile utilizzare "$(SRCROOT)"

+0

Grazie per le "Dette virgolette sono consigliate se il percorso del tuo progetto ha spazi" –

0

Xcode 6.1.1 richiede inoltre di impostare Percorsi di ricerca-> Cerca sempre percorsi utente su "Sì" ... e avere Percorsi di ricerca intestazione utente come specificato nei post precedenti.

0

Per XCode 9.0, sono riuscito a fare doppio clic sulla sezione di input delle intestazioni (accanto a destra di Debug e rilascio) per consentire ad esso di aprire un menu per aggiungere facilmente più percorsi di intestazione.

Problemi correlati