0

有没有办法生成为可执行文件调用的 C++ 方法列表?我有一个动态库,想看看从可执行文件中调用了多少方法。我可以看到 C++ 方法正在通过 dumpbin 或 readelf 导出。但是,当我在调用动态库的可执行文件上运行这些工具时,只列出了 C 方法和一个 C++ 方法。C++ 导入有什么特别之处吗?

4

2 回答 2

1

您可以使用分析构建您的库和程序,然后您可以获得所有调用函数的列表(以及每个函数花费了多少时间)。

您还可以添加手动跟踪日志记录,这意味着您添加一个在每个函数的开始和结束时写入控制台的调用。

分析可能是最简单和最简单的方法。在此处查找构建时所需的选项,例如此处gprof查找提取信息所需的程序手册。

于 2013-01-04T20:58:30.573 回答
0

-pg您可以使用分析技术,例如使用传递给gcc(和在链接时)的标志编译整个程序,然后使用gprof. (还有oprofile)。

您可以使用ltrace来了解已完成的库调用。

您可能会对这篇关于逆向工程工具的文章感兴趣。

于 2013-01-04T20:56:36.863 回答