Я создаю приложение на C++, которое включает преобразование двоичного файла perf.data в текстовый формат. Обычно это делается с помощью команды perf script в терминале. Однако я хочу вызвать соответствующую функцию C напрямую из моего кода, чтобы код был независимым от платформы. Теоретически это должно быть возможно, потому что я не использую профилировщик, а только функцию преобразования двоичного текста в текст.
TLDR; По сути, мне нужна лишь небольшая часть профилировщика Perf, преобразователя двоичных файлов в текст, и я хочу сделать его независимым от платформы.
На данный момент я углубился в исходный код Компилятор Linux Perf и нашел основной скрипт, отвечающий за преобразование. Мне также удалось выяснить функцию точки входа C (
) и какие входные параметры для этого требуются. Однако я не понимаю, как разрешить зависимости. Например, некоторые зависимости, такие как библиотеки , не являются частью ядра Linux, и я не совсем уверен, нужны ли они мне вообще.
Может ли кто-нибудь подсказать как это сделать?
Подробнее здесь:
https://stackoverflow.com/questions/790 ... f-profiler