Как узнать, из какого сорса строка попадает в бинарь?

Можно ли как-то узнать, из какого файла (ещё лучше - строки файла) некоторые строки попали в бинарь? Имеются все сорсы и бинарь test.so, полученный из них. Для команды strings test.so выдаёт в одной из строк путь с sensitive инфой, которой не должно там быть. Хочу узнать, откуда эта строка приходит. Просто поиск по сорсам не находит эту строку, видимо макросом генерится.


Ответы (1 шт):

Автор решения: Stas

Надо использовать gcc -E -P, а не просто gcc -E.

https://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html

-P

Inhibit generation of linemarkers in the output from the preprocessor. This might be useful when running the preprocessor on something that is not C code, and will be sent to a program which might be confused by the linemarkers.

→ Ссылка