我过去曾多次使用过vtune,通常没有太多麻烦。不幸的是,每次使用之间的差距通常很长,以至于我忘记了每次使用它的某些方面。我知道需要以某种方式存储行号和符号信息。我认为所需要的只是用“程序数据库”(/ Zi)编译你的exe,但我刚刚做了一个抽样,发现vtune报告没有可用的符号。
我错过了什么吗?
答案 0 :(得分:1)
有两种调试选项(检查$> cl /?):
/ Zi启用调试信息
/ ZI启用编辑并继续调试信息
确保您拥有.pdb和manifest文件(如果已生成)。 它没有关系,但可能也会关闭优化。
答案 1 :(得分:0)
就像Bua提到的那样,你肯定需要在启用调试信息的情况下进行编译。如果pdb文件与您正在分析的exe在同一目录中,那么它应该能够找到它们。如果没有,您还可以尝试在config中显式添加pdbs的路径 - >选项 - >目录。 alt text http://software.intel.com/file/21331使用符号目录添加项目。您可能还想添加符号服务器和符号缓存,因为这样您就可以获得所有Microsoft公共二进制文件的符号。上图显示了如何在c:\ websymbols中添加带符号缓存的符号服务器。通常,“符号服务器”的格式是以下形式的字符串:
一个例子:
SRV*C:\MySymbolCache\*http://msdl.microsoft.com/download/symbol
形式:
SRV * [CACHE] * [SYM SERVER PATH]
希望这有帮助!
答案 2 :(得分:0)
问题已经解决:原来在设置工作目录时出错了;毕竟“/ Zi”似乎是所有必需的。我不需要关闭优化。