[英]No output from heob in a Qt application using Qt Creator
[英]Using Intel Vtune to profile Application from Qt Creator
我想在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 * Symbol Server从Microsoft *网站下载所需的PDB文件。 按照以下步骤确保VTune Amplifier使用系统和您自己的库的调试信息。
我尝试了一些方法,例如:-edit file.pro来更改发布版本
QMAKE_CXXFLAGS_RELEASE += -g
QMAKE_CFLAGS_RELEASE += -g
QMAKE_LFLAGS_RELEASE =
但它没有改变任何东西,我仍然没有打印功能名称
任何输入都非常感谢。
是的,对于VTune(或其他类似的分析工具),您需要“释放构建”(即优化开启),同时调试信息也会打开。 QTCreator默认情况下不会创建此类发布+调试配置。
对于Windows MS编译器工具链,它意味着您必须使用其他 / Zi编译和/ DEBUG链接器选项来补充 Release配置。
为了在QTCreator中传播这些附加选项,请使用以下步骤 (另请参见下面的屏幕截图):
QMAKE_CXXFLAGS+=-Zi
QMAKE_LFLAGS+=/DEBUG
几个小调 :
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.