В проекте, который я компилирую, используется CMake, который любит абсолютные пути.
Когда я компилирую с включенной информацией об отладке, gcc помещает эти длинные имена в разделы .debug_str
, что плохо для отладки. Вместо этого я хотел бы иметь короткие пути к корневому каталогу.
Есть ли какая-то опция, чтобы сообщить gcc о том, чтобы удалить часть пути до того, как исправить данные отладки? Или, может быть, есть какой-то инструмент, который мог бы сделать это в скомпилированных двоичных файлах?
Я пробовал использовать SET(CMAKE_USE_RELATIVE_PATHS ON)
(который, как представляется, нахмурился разработчиками), но поскольку я использую -f-source-сборки, имена путей все еще не в той форме, в которой я бы хотел. То есть они ./../src/mod_foo/foo.c
вместо mod_foo/foo.c
.