【Tools】 VSCode Debug 报 g++.exe No such file or directory fatal error no input files.. 的解决方案
昨天搭建了 VSCode Cpp 断点调试环境,中午还能跑的,到了傍晚就开始报错了。按照我发布的文章搭建的环境,按 F5 试图断点调试时,报错如下:
注意看 VSCode 集成的 TERMINAL 里的报错g++.exe: error: e:ProjectsVSCodeCppTest5srctest.cpp: No such file or directory
这里的 e:ProjectsVSCodeCppTest5srctest.cpp 其实应该是 e:\Projects\VSCode\Cpp\Test5\src\test.cpp。
但是却被解析为没有斜杠的地址,所以才会导致编译器找不到该文件。
原来,造成这个错误解析的原因在于。不同的终端对斜杠和反斜杠的解析规则不同。而我昨天在配好环境之后,又偶然发现 VS Code 自己集成了终端,而且还集成了环境中所有的终端,包括 PowerShell
,Command Prompt(cmd)
,和 Git Bash
。
当使用快捷键 ctrl
+ shift
+ ~
打开终端时,点击右侧的下拉箭头可以选择默认打开的 终端。
点击 Select Default Shell
之后,在界面上方就会弹出环境中的所有 Shell 以供选择。
选择了 Git Bash
然后 F5 调试 Cpp 代码的话,就会报开篇的错误。当选择了 PowerShell
或者 Command Prompt
之后,就可以正常调试啦!
注意,
报错时点击下拉菜单是无法选择默认 shell 的,需要用快捷键自己打开一个终端。