2009-08-14 10 views
5

Mi chiedo solo se posso dire gcc per incorporare il percorso assoluto di un file di origine nelle informazioni di debug, anche se io chiamo gcc comegcc/gdb: come incorporare il percorso assoluto al file sorgente nelle informazioni di debug?

gcc -g ../src/somecode.c -o ../bin/somecode.o 

come la vedo io atm, gcc memorizza solo quello che fornisci quindi, se fornisci un percorso relativo, alla fine gdb conosce solo il percorso relativo.

c'è un modo per bypassarlo senza utilizzare percorsi assoluti durante la compilazione? come: lasciare gcc cercare il percorso completo?

grazie in anticipo RTI

+0

Vedi questo altro post: [? Può essere configurato per gcc non stampare un percorso completo nei messaggi di avviso/errore] (http://stackoverflow.com/questions/1282392) – Leo

+0

Vai a questa altro post: [Può essere configurato per non stampare un percorso completo nei messaggi di avviso/errore?] (http://stackoverflow.com/questions/1282392) – Leo

risposta

3
gcc -fdebug-prefix-map=..=$(readlink -f ..) 
+0

Perfetto. Questo è quello che stavo cercando. Molte grazie. – rti

0

Quale piattaforma stai costruendo e che cosa è il formato nativo di debug per quella piattaforma? Non che queste informazioni ti avvicinino necessariamente alla risoluzione del problema, ma potrebbe valere la pena esaminare le specifiche per il formato di debug per vedere se quello che vuoi fare ha senso anche da quella prospettiva.

Si sta passando l'opzione '-g' al compilatore a destra.

+0

grazie mille per la risposta. sì, sto passando -g a gcc :) voglio risolvere il problema su linux e mac os x. per essere onesti, non so quali formati sono quelli di default. potresti raccomandarne uno? – rti

Problemi correlati