到目前为止,当我按下F11时,我的Visual Studio 2008调试器优雅地进入了Qt库代码。将Qt升级到最新版本并更改QTDIR后,F11不再进入库代码。有关如何使调试器再次智能的任何线索?
答案 0 :(得分:10)
激活模块列表,调试 - Windows - 模块,以查看加载了哪些库以及是否为这些库加载了调试符号。请注意,您需要在进程上激活调试器才能执行此操作。
在调试模式下,Qt库应以d为后缀。例如QtCored4.dll。如果您在列表中看到QtCore4.dll,则表明您已链接到错误的库。如果它确实说QtCored4.dll但在符号状态下有一些不同于符号加载。,那就是原因。您可以通过右键单击dll并选择加载符号来手动加载符号。单击后,它会询问Pdb文件。
您可以从工具 - 选项 - 调试(树) - 符号(树)中添加更多pdb文件位置(如果它们未加载但存在)。如果您希望自动加载符号。
如果它给出了一些错误,pdb文件与二进制文件或类似的东西不匹配,你应该重新构建你的Qt调试版本,除非你有更多的pdb文件要尝试。使用Visual Studio命令提示符并转到Qt目录,运行configure和nmake。这需要一段时间,可能需要几个小时。有一些转换只建立调试版本,但我忘了它去了哪里。请注意,构建可能会失败,之后www.google.com搜索会很有趣。最好的选择可能是获取源代码包,我忘了在哪里获得它并且它不容易找到。如果你知道从哪里得到它,请告诉我。我依稀记得可能还有其他方法来构建调试版本,但这是我唯一知道的。
答案 1 :(得分:0)