lxa85
30-05-2023, 08:45
Здравствуйте.
Помогите найти документацию или объяснение, почему так происходит.
Суть:
Есть исходный код, допустим :
https://github.com/Sehktel/DeepThought
В Linux загружаем, компилируем
g++ -g ./Deep.cpp -o ./Deep.out
Теперь, используя отладчик gdb я могу с помощью list получить исходный код.
Я могу переместить бинарный файл в системе (например в /tmp ) и все равно получить исходник.
Следовательно, есть предположение, что исходник находится внутри файла. Но нет.
Если переименую Deep.cpp в Deep_1.cpp gdb с задачей list не справится.
Следовательно исходника внутри нет. (?!)
Вопросы.
Как мне получить бинарный код, переносимый из системы в систему, чтобы в нем был исходный код (gdb list) ?
Как работает -g что я могу перемещать бинарь по системе, но не могу переименовать исходник ?
Может я не в ту сторону думаю и все намного проще и давно решено?
За ссылку на правильную документацию буду благодарен.
P.S. Поиграть в онлайн можно здесь: https://killercoda.com/thcode/course/DevSecOps/scenario2
Для работы приходится в недрах системе держать исходный код в открытом виде, что не хотелось бы.
Помогите найти документацию или объяснение, почему так происходит.
Суть:
Есть исходный код, допустим :
https://github.com/Sehktel/DeepThought
В Linux загружаем, компилируем
g++ -g ./Deep.cpp -o ./Deep.out
Теперь, используя отладчик gdb я могу с помощью list получить исходный код.
Я могу переместить бинарный файл в системе (например в /tmp ) и все равно получить исходник.
Следовательно, есть предположение, что исходник находится внутри файла. Но нет.
Если переименую Deep.cpp в Deep_1.cpp gdb с задачей list не справится.
Следовательно исходника внутри нет. (?!)
Вопросы.
Как мне получить бинарный код, переносимый из системы в систему, чтобы в нем был исходный код (gdb list) ?
Как работает -g что я могу перемещать бинарь по системе, но не могу переименовать исходник ?
Может я не в ту сторону думаю и все намного проще и давно решено?
За ссылку на правильную документацию буду благодарен.
P.S. Поиграть в онлайн можно здесь: https://killercoda.com/thcode/course/DevSecOps/scenario2
Для работы приходится в недрах системе держать исходный код в открытом виде, что не хотелось бы.