LINUX.ORG.RU

Информация из объектного файла

 


0

2

Есть объектный файл с отладочной информацией.

1. Хочется получить список функций имеющихся в нём.

nm или objdump решают эту задачу.

2. Для каждой функции получить список вызываемых функций.

Чем это можно сделать?

★★★★★

Не совсем из объектного файла, но нашлось подходящее решение.

Ключик -fdump-rtl-expand заставляет gcc создавать доп. файл, из которого утилью egypt получается список вызываемых функций.

vel ★★★★★
() автор топика
Ответ на: комментарий от vel

Ключик -fdump-rtl-expand заставляет gcc создавать доп. файл, из которого утилью egypt получается список вызываемых функций.

Это называется «call graph» и это можно решить через doxygen. Sourcetrail еще умеет такое. Использовать -fdump-rtl-expand для этого - ну как-то слегка странное решение

SZT ★★★★★
()
Ответ на: комментарий от SZT

Я гуглил call graph gcc - egypt первый нашелся.

C clang немного проблематично. Это сборка модуля ядра, а там gcc.

vel ★★★★★
() автор топика

gnu cflow дает более или менее похожие данные, но с условной компиляцией нужно разбираться вручную.

вариант с «gcc -fdump-rtl-expand» похже полностью игнорирует функции объявленные как static.

vel ★★★★★
() автор топика
Последнее исправление: vel (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.