2010-10-22 12 views
9

Sto utilizzando Eclipse CDT. Ho configurato il "Builder esterno" e sto generando automaticamente i Makefile. Sfortunatamente, i Makefile generati contengono il percorso di inclusione assoluto. Vorrei usare i Makefile generati su altri sistemi (dove Eclipse non è installato) - c'è un modo per far usare a Eclipse i percorsi relativi nel Makefile?Acquisizione di Eclipse CDT per utilizzare i percorsi di inclusione relativi nei Makefile generati

Ho configurato i miei progetti includendo la directory in Impostazioni -> Impostazioni strumento -> Compilatore C di GCC -> Includi percorsi utilizzando $ {workspace_log}.

+1

La risposta accettata di seguito funziona per includere i percorsi nel progetto, ma per quanto riguarda i file di risorse collegate? Il mio makefile generato contiene ancora file sorgenti di percorsi assoluti. Non usi fonti collegate nel tuo progetto? Come puoi compilare su altri sistemi? – dtmland

risposta

4

Se si utilizza il percorso relativo nei "percorsi di inclusione" (invece di ${workspace_loc}), il makefile (e i file mk utilizzati) includerà anche percorsi relativi.

+5

Parente da dove però? – CashCow

+1

Per caso, come ottenere lo stesso risultato per i file sorgente collegati? Sono ancora impostati in modo assoluto nei miei makefile generati? – dtmland

+0

No, mi dispiace ... Non ho lavorato con Eclipse in circa 4 anni. –

3

I percorsi relativi aggiunti in "Progetto> Proprietà> C/C++ Generale> Percorsi e simboli> Include" sono relativi alla cartella del progetto.

Quelli che appaiono nei makefile generati sono relativi alla posizione principale del Makefile.

1

C'è un modo migliore per farlo: "Progetto> Proprietà> C/C++ Build> Impostazioni> Impostazioni strumento> Cross G ++ [o GCC] Compilatore> Include". Clicca pulsante più, quindi scrivere:

"$ {} ProjDirPath /../../../ somefolder1/somefolder2"

Questo approccio consente di specificare qualsiasi cartella esterno percorso relativo alla cartella del progetto, anche se si trova in sottocartelle principali.

Problemi correlati