profiling - gperftools - 配置文件未转储

标签 profiling ubuntu-14.04 qt-creator gperftools

我已经配置并构建了gpreftools 。但是,我似乎找不到我的程序生成的配置文件来显示它。

我采取了以下行动:

  1. 添加 -lprofiler链接器标志到我的 .pro ,构建程序并在链接阶段正确添加标志。 QMAKE_LFLAGS += -lprofiler

  2. 运行: $ CPUPROFILE=/tmp/prof.out /path/to/executable

  3. 执行: $ pprof --gv /path/to/MyExe /tmp/prof.out

然后我得到以下信息:

Failed to get profile: curl -s --max-time 90 'http:///pprof/profile?seconds=30' > /home/eslam/pprof/.tmp.MyExe.1509005857.: No such file or directory.

有人对此有决心吗?

最佳答案

检查您的程序是否确实链接到 libprofiler.so。某些操作系统(例如,据我所知某些版本的 ubuntu)如果实际上没有使用 .so 的符号,则实际上不会添加 .so 。例如。 ldd ./yourprogram 应列出 libprofiler.so。如果这种情况没有发生,那么您应该在链接器标志前面添加 -Wl,--no-as-needed 之类的内容。

关于profiling - gperftools - 配置文件未转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46949407/

相关文章:

.net - Visual Studio 分析异步方法,包括实际等待时间

linux - Linux服务器的功耗比桌面版低吗?

c++ - 为 Qt 项目创建标志或使用 QLoggingCategory

c++ - make_unique Creator 中的参数太少

c++ - 如何让用户垂直调整窗口大小

MySQL 分析器在运行时生成与 'show profiles' 相同的数据

Android Eclipse : Traceview, 我只是不明白

linux - Perf 显示没有内存访问的 block 中的 L1-dcache-load-misses

php - 无法从命令行执行PHP文件

PHP -l 为同一个文件产生不同的输出