Получить читаемые gdb символы без флага -g?

Я работаю над действительно большим проектом, который я хотел бы отладить с помощью GDB. К сожалению, компиляция с -g flag занимает два с половиной дня и выводит библиотеки, размер которых превышает 60Go (проект занимает ~1Go без -g).

Есть ли более простой способ получить таблицу символов (т.е. иметь возможность вернуться) и если да, то как? Я видел, что GDB предлагает три уровня отладки (уровень -g, как описано здесь), это поможет? Было бы string?

Заранее спасибо.

2 ответа

Решение

Для возврата с только именами функций вам не нужно -g совсем.

Для возврата с информацией о файле и строке, используя последние версии GCC, попробуйте -gmlt опция (минимальная строка таблицы). Обратите внимание, что информация о локальной переменной не будет доступна в GDB.

Если вы хотите локальные переменные, вы, вероятно, захотите использовать -gdwarf-4,

Документация, на которую вы указали, предназначена для gcc-2.95, Это древняя версия. Если вы все еще используете его, вашей первой задачей должно быть переключение на (текущий) gcc-4.6.2

Если у вас есть представление об исходных файлах, которые вы хотите отладить compile them with -g option, Убедись, что ты link with -g вариант тоже. Теперь у вас есть частичное изображение отладки.

Другие вопросы по тегам