У меня есть такая структура кода:
project_dir/
source1.c
subdir/
source2.c
Makefile
вызывает subdir/Makefile
, поэтому файл subdir/source2.c
компилируется следующим образом:
gcc -g -someoptions source2.c
и символы в GDB ссылаются на source2.c
вместо subdir/source2.c
(в результате GDB не может найти символы в исходных файлах).Как мне написать Makefile или какие опции использовать в gcc для получения символов, используя относительный путь к главному каталогу проекта (или, в конечном итоге, абсолютный путь)?
Я не могу использовать:
cd .. && gcc -g -someoptions ../subdir/source2.c
потому что мне нужно изменить ссылки на заголовочные файлы во всех файлах в subdir
.