Se voglio includere le directory per la ricerca di file di intestazione, che è il modo preferito e perché?-I dir vs. -isystem dir
risposta
Aggiungere la directory dir alla testa della lista di directory da ricercare file di intestazione. Questo può essere usato per sovrascrivere un file di intestazione di sistema, sostituendo la propria versione, poiché queste directory vengono cercate prima delle directory dei file di intestazione di sistema. Tuttavia, non si dovrebbe usare questa opzione per aggiungere directory che contengono file di intestazione di sistema forniti dal fornitore (usare -isistema per questo). Se si utilizza più di un'opzione -I, le directory vengono scansionate nell'ordine da sinistra a destra; le directory di sistema standard vengono dopo.
Se un sistema standard include la directory o una directory specificata con -isystem, viene anche specificato con -I, l'opzione -I verrà ignorata. La directory verrà comunque ricercata, ma come una directory di sistema nella sua posizione normale nel sistema include la catena. Questo per garantire che la procedura di GCC per correggere le intestazioni di sistema buggy e l'ordine per la direttiva include_next non vengano inavvertitamente modificate. Se è davvero necessario modificare l'ordine di ricerca per le directory di sistema, utilizzare le opzioni -nostdinc e/o -isystem.
Così -I
è probabilmente l'opzione preferita per specificare la posizione dei file di intestazione, ad eccezione di casi particolari come le intestazioni di sistema forniti dal produttore.
È necessario utilizzare -I per specificare la posizione delle intestazioni.
I file specificati con -isystem vengono cercati dopo -I viene elaborato e riceve un trattamento speciale da gcc (lo stesso delle intestazioni di sistema standard).
Un modo per visualizzare questo è utilizzare le intestazioni controllate con -I
e quelle che non si (sistema, librerie di terze parti) con -isystem
. La differenza pratica arriva quando gli avvisi sono abilitati in quanto gli avvisi che provengono dalle intestazioni -isystem
verranno soppressi.
Quando si include un'intestazione "Myheader.h" utilizzando -I, il compilatore genera l'ordine di ricerca: "Myheader.h", "sistema/intestazioni". Quindi, se qualcosa non può essere trovato in "MyHeader.h" si fallback su "sistema/intestazioni". Comunque quando usi -isystem, stai praticamente dicendo che sostituisci "system/headers" con qualunque cosa ti dessi. Quindi non ci sono più ricadute su "sistema/intestazioni".
- 1. docker run -v <dir> vs Dockerfile's VOLUME <dir>
- 2. Perché 'dir()' ha il nome 'dir' in python?
- 3. Django heroku static dir
- 4. Cabal: build dir con source
- 5. cosa è ~/.npm dir per?
- 6. manipolazione dir (__ DIR__) non funziona
- 7. Python dir() equivalente in JavaScript?
- 8. Ruby gem elencato, ma non si carica (gem in dir utente, non rubino dir)
- 9. Come specificare dir di base, allora corriamo formica come formica somedir -f/dir/build.xml
- 10. cmd dir/b/s più data
- 11. Come modificare la posizione jenkins `/ tmp` dir?
- 12. per ogni dir crea un file tar
- 13. Cosa significa la funzione dir() di Python?
- 14. IIS 7.5 Express New Virtual Dir
- 15. Leggi sistema TMP dir in R
- 16. Configure output dir per Assetic in Symfony2
- 17. Come creare una dir di test?
- 18. Android ACTION_GET_CONTENT non aggiorna scaricare i file dir
- 19. differenza tra i locali() e globali() e dir() in python
- 20. Python: come importare da tutti i moduli in dir? Struttura
- 21. Elimina i nomi delle directory elencati con DIR
- 22. Mailx e Gmail nss config dir
- 23. Aggiunta di dir personalizzata a PYTHONPATH
- 24. XAMPP dir dati cambiamento mysql non funziona
- 25. Annulla "git add <dir>"?
- 26. git --git-dir non funziona come previsto
- 27. Come ottenere la posizione genitore dir
- 28. Come posso aggiungere dir a $ PATH in Makefile?
- 29. Impostazione PHP tmp dir - Caricamento PHP non funzionante
- 30. Aggiungi dir multiplo per file statici in Loopback
Inclusa o esclusa la libreria C standard host? –
Né l'uno, né l'altro. Basta leggere nel manuale GCC sulle opzioni di pre-elaborazione e inciampare su questi due. – helpermethod