gpt4 book ai didi

c++ - VSPerf VS2010 和其他分析工具没有获取 pdb

转载 作者:行者123 更新时间:2023-11-28 07:55:11 25 4
gpt4 key购买 nike

尝试使用 VSPerfCmd(VS2010 分析器)以及 Intel VTune Amplifier XE 2013 进行分析:对于 .vsp 文件中的 VsPerfCmd,一些结果可用。但是,profier 没有获取 pdb。应用程序的某些部分没有可用的代码。

您是否已经遇到过这种情况,您知道是否应该打开某些编译器选项以获得完整的配置文件吗?

探查器在哪个目录中查找 .pdb 信息?

谢谢

最佳答案

默认情况下,Windows 上的探查器和调试器通过写入可执行文件的路径查找 PDB 文件。所以要做的第一件事是在一些十六进制编辑器中打开可执行文件并搜索“.pdb”字符串并检查磁盘上是否存在提到的文件。如果不是这种情况,请检查您是否为编译器指定了/Zi 或/ZI 选项,为链接器指定了/debug 选项。

如果应用程序的某些部分缺少符号名称,请检查这些部分是单独的动态库还是静态库,以及是否为它们生成调试信息。在静态库的情况下,很容易在链接方式中丢失调试信息,因为默认情况下/Zi 标志将调试信息嵌入到 vc*.pdb 文件中(例如 VS 2008 的 vc90.pdb)并且该文件通常不会导出通过构建系统进入 SDK。对于静态库,我个人认为使用/Z7 选项获取调试信息最有用,因为它将它嵌入目标文件本身,然后嵌入到 *.lib 文件,然后传播到最终的 *.exe/*.dll 二进制文件的 PDB文件。

关于c++ - VSPerf VS2010 和其他分析工具没有获取 pdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12854860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com