首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GPerfTools没有显示函数名

GPerfTools没有显示函数名
EN

Stack Overflow用户
提问于 2022-05-08 22:20:31
回答 1查看 169关注 0票数 3

我刚开始分析,并试图为我的c++项目创建一个平面配置文件。看来口香糖很受欢迎。我使用Homebrew安装了this工具,并遵循了这个简单的教程

当我尝试使用pprof --text ./my_program_name my_program_name.prof创建一个平面配置文件时,会生成一个概要文件,但其中一些配置文件只是内存地址,而不是函数名。生成的概要文件的一部分如下所示。

代码语言:javascript
复制
 3585  25.5%  25.5%     3585  25.5% 0x00007ff812f740ea
 1780  12.6%  38.1%     1780  12.6% 0x00007ff812f728d2
  484   3.4%  41.6%      866   6.2% Block::Block@100005fc0
  419   3.0%  44.5%      782   5.6% _OSSL_PARAM_locate
  363   2.6%  47.1%      378   2.7% std::__1::basic_string::__zero

作为参考,我正在使用g++ -std=c++17 -lprofiler -lpthread -lcrypto my_program_name.cpp -o my_program_name编译我的代码

我不知道为什么其中的一些配置文件是内存地址。当我使用pprof命令创建概要文件时,在生成概要文件之前会出现一堆错误。这些错误都是/usr/lib/usr/lib/system中缺少的文件。错误如下所示。

error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool-classic: can't open file: /usr/lib/liboah.dylib (No such file or directory)

我真的不知道该怎么办。任何帮助都将不胜感激。谢谢!另外,运行在macOS蒙特利12.3.1上。

EN

回答 1

Stack Overflow用户

发布于 2022-10-21 08:12:40

tcmallocpprof必须匹配。

例如:将libtcmalloc.a链接到位置:

/usr/local/Cellar/gperftools/2.9.1_1/lib/libtcmalloc.a

pprof应该是/usr/local/Cellar/gperftools/2.9.1_1/bin/pprof

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72165484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档