У меня есть хост-приложение, и я написал плагин. Я скомпилировал свой плагин в общий объект (скажем, foo.so), и хост-приложение загрузит его через dlopen. В этом случае мое хост-приложение - это инструмент выбора от llvm (хотя я не думаю, что это важно для вопроса).
Я хотел бы скомпилировать свой плагин с включенным профилированием (т. Е. g++ -pg
, gprof
). Однако, когда я делаю это, файл вывода профиля gmon.out никогда не создается. Возможно, gprof ожидает, что кто-то вызовет процедуру установки, или что-то в этом роде.
По разным причинам я бы не хотел перекомпилировать хост-приложение с -pg. Мне интересно, можно ли профилировать общий объект foo.so без профилирования хост-приложения opt.
Я также изучил другие инструменты профилирования; qprof от HP должен быть в состоянии справиться с этой ситуацией, но он не может разрешить имена функций в общем объекте (он обращается к addr2line очень наивно).
Спасибо,
Ник