我使用Visual Studio 2015在Windows上安装了最新的llvm。
我创建了一个C ++项目,并选择 LLVM-vs2014 作为VS 2015中的平台工具集。
我可以编译和编译输出如下:
------重建全部开始:项目:Cxx1zTest,配置:调试x64 ------ 1 GT; Cxx1zTest.vcxproj - > d:\项目\ Cxx1zTest \ 64 \调试\ Cxx1zTest.exe 1 GT; Cxx1zTest.vcxproj - > D:\ projects \ Cxx1zTest \ x64 \ Debug \ Cxx1zTest.pdb(Full PDB) ==========重建全部:1成功,0失败,0跳过==========
我也可以成功运行该项目。
问题是:
我无法在源代码级调试项目,因为 VC ++ 可以;虽然生成了完整的pdb。
按F5开始调试后,调试窗口输出:
'Cxx1zTest.exe'(Win32):已加载 'd:\项目\ QbgTestServer \ 64 \调试\ Cxx1zTest.exe'。符号已加载。 'Cxx1zTest.exe'(Win32):已加载'C:\ Windows \ System32 \ ntdll.dll'。 无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):已加载 'C:\ WINDOWS \ SYSTEM32 \ kernel32.dll中'。无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):加载'C:\ Windows \ System32 \ KernelBase.dll'。 无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):已加载 'C:\ WINDOWS \ SYSTEM32 \ vcruntime140d.dll'。无法找到或打开PDB 文件。 'Cxx1zTest.exe'(Win32):已加载 'C:\ WINDOWS \ SYSTEM32 \ msvcp140d.dll'。无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):已加载'C:\ Windows \ System32 \ ucrtbased.dll'。 无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):已加载 'C:\ WINDOWS \ SYSTEM32 \ kernel.appcore.dll'。无法找到或打开PDB 文件。 'Cxx1zTest.exe'(Win32):已加载 'C:\ WINDOWS \ SYSTEM32 \ MSVCRT.DLL'。无法找到或打开PDB文件。 'Cxx1zTest.exe'(Win32):已加载'C:\ Windows \ System32 \ rpcrt4.dll'。 无法找到或打开PDB文件。线程0x16ec已退出 代码0(0x0)。线程0x115dc已退出,代码为0(0x0)。该 线程0x9740已退出,代码为0(0x0)。该计划'[1108] Cxx1zTest.exe已退出,代码为0(0x0)。
根本原因是什么?
是否有解决方法来解决此问题?
答案 0 :(得分:0)
根据输出窗口中的警告消息,它们是我们没有调试符号的所有系统DLL。
打开VS IDE:
转到工具 - >选项 - >调试 - >符号,请选中复选框" Microsoft Symbol Servers",然后Visual Studio将自动下载PDB文件。