我想在 Windows 7 上使用 Vtune 从 QtCreator 分析应用程序。但是 Vtune 基本上是为 Visual Studio 应用程序制作的,所以我必须在我的函数名称和发布版本中的指令之间建立链接。实际上,我在 Hotspots 中只有伪名称 func@address,它不可用。
通过探索英特尔 Vtune 的“入门”,我发现我必须在我的发布版本中启用调试信息,但如何在 QtCreator 中执行该操作?
从“使用调试信息”文件中:
为了提供准确的性能数据并启用源分析,英特尔® VTune™ 放大器需要其分析的二进制文件的调试信息。如果在二进制文件中找不到调试信息,VTune Amplifier 会静态识别函数边界并将热点地址分配给为此类函数生成的伪名称 func@address。
如果没有调试信息,则调用堆栈窗格可能无法正确展开用户模式采样和跟踪分析类型的调用堆栈。此外,在某些情况下,为没有调试信息的模块确定结果可能需要更多时间。
在 Windows* 操作系统上,PDB 文件提供调试信息。确保您的系统和应用程序库/可执行文件都有 PDB 文件。使用优化编译您的目标并开始分析其性能。
默认情况下,Microsoft Visual Studio* IDE 不会在发布模式下生成 PDB 信息。要使用 VTune 放大器获得更好的结果,请手动启用符号生成。对于系统库,使用 Microsoft* 符号服务器从 Microsoft* 网站下载所需的 PDB 文件。按照以下步骤确保 VTune 放大器使用系统和您自己的库的调试信息。
我尝试了一些方法,例如:-编辑 file.pro 以更改发布版本
QMAKE_CXXFLAGS_RELEASE += -g
QMAKE_CFLAGS_RELEASE += -g
QMAKE_LFLAGS_RELEASE =
- 配置调试版本。
但它没有改变任何东西,我仍然没有打印函数名称
非常感谢任何输入。