gcc/gdb:Как встроить абсолютный путь к исходному файлу в отладочную информацию?

StackOverflow https://stackoverflow.com/questions/1275476

Вопрос

мне просто интересно, могу ли я сказать gcc встроить абсолютный путь к исходному файлу в отладочную информацию, даже если я вызываю gcc следующим образом

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

насколько я понимаю, gcc просто хранит то, что вы предоставляете, поэтому, если вы предоставляете относительный путь, в конце gdb также знает только относительный путь.

есть ли способ обойти это, не используя абсолютные пути при компиляции?Нравится:позволить gcc найти полный путь?

заранее спасибо rTi

Это было полезно?

Решение

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

Другие советы

Для какой платформы вы создаете и каков собственный формат отладки для этой платформы?Не то чтобы эта информация обязательно приблизит вас к решению вашей проблемы, но, возможно, стоит взглянуть на спецификацию формата отладки, чтобы понять, имеет ли вообще смысл то, что вы хотите сделать, с этой точки зрения.

Вы правильно передаете параметр '-g' компилятору.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top