文章参考:
【终结】vscode“检测到 #include 错误,请更新 includepath。”的问题解决办法
codeblocks安装(自带gcc编译器)
如何用vsCode写C/C++?
由于我截图工具不知道为什么坏了,可能需要偷别人几张图……
关于VSCode
VSCode主要就是写前端的,有些功能不是特别全,后端开发不建议使用。
VSCode的C++配置
一、下载C/C++插件
这个就是比较简单,直接搜索插件下载就行
二、下载gcc/g++
写C/C++需要gcc/g++大概是一个小小的常识(因为我比赛的时候总能看到编译环境gcc之类的话,具体我也不清楚),我之前一直用codeblocks写C/C++程序,它好像是内置编译环境,所以没怎么配置就可以用,但VSCode就不行了。
codeblocks是自带gcc和g++的,可不可以直接用呢?
- 打开codeblocks,选择settings,compiler settings
由于我截图工具坏了……你看到了吗,MinGW就是我们要的那个文件夹。 - 配置GCC环境变量。环境变量这个东西已经很熟悉了,先添加一个名为MinGW的系统变量,再在Path中添加C:\MinGW\bin(这个图我不放了,路径别写错就行),然后确认。用命令行检查一下,输入gcc -v,成功。
三、配置VS里的环境
- 在工作空间中创建一个.vscode文件夹。
- 新建一个tasks.json文件。内容如下。
注意command 这一条,要与GCC安装路径一致,且在路径中 '\'要替换为'\\'。
{"version":"2.0.0","tasks":[{"type":"cppbuild","label":"C/C++: g++.exe build active file","command":"D:\\mingw64\\bin\\g++.exe","args":["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"],"options":{"cwd":"${fileDirname}"},"problemMatcher":["$gcc"],"group":{"kind":"build","isDefault":true},}]}- 新建一个launch.json文件。内容如下:
注意miDebuggerPath 这一条,要与GCC安装路径一致,且在路径中 '\'要替换为'\\'。
{"version":"0.2.0","configurations":[{"name":"C/C++: g++.exe build and debug active file","type":"cppdbg","request":"launch","program":"${fileDirname}\\${fileBasenameNoExtension}.exe","args":[],"stopAtEntry":false,"cwd":"${fileDirname}","environment":[],"externalConsole":false,"MIMode":"gdb","miDebuggerPath":"D:\\mingw64\\bin\\gdb.exe","setupCommands":[{"description":"Enable pretty-printing for gdb","text":"-enable-pretty-printing","ignoreFailures":true},{"description":"Set Disassembly Flavor to Intel","text":"-gdb-set disassembly-flavor intel","ignoreFailures":true}],"preLaunchTask":"C/C++: g++.exe build active file"}]}- (可选)配置运行方式
这个步骤的作用是将程序运行在VSCode的集成终端上,不会额外弹出一个控制台黑窗口,如下配置:
这个选项我没找到……
四、测试配置
随便写个文件,然后运行。注意在return 0处设置断点,否则好像调试窗口会直接关闭。断点就是代码左边编号再左边那个红色小圆点。
VSCode编码注意事项
- 中文乱码问题
使用printf输出中文时,会出现问题。点击右下角的"UTF-8",选择“通过编码保存”,输入“GB 2312”,选择“Simplified Chinese(GB 2312)”,将UTF-8转换成GB 2312。
vscode:四个乱码问题及解决方法
VSCode连接集群
VSCode经常会自动更新,导致连不上集群,这里记录一下关于VSCode连接集群的配置,还有最好是关掉自动更新。
(1)配置文件
找到Config File。
根据自己的用户名(USERNAME)和集群登陆节点地址(例如:111.111.111.11)、计算节点(例如:gpu03),修改下面的配置,然后写在Config File。
Host111.111.111.11HostName111.111.111.11UserUSERNAMEHost gpu03 HostName gpu03 UserUSERNAMEProxyCommand ssh-W%h:%p111.111.111.11(2)关闭自动更新
打开VSCode -> 设置 -> 搜索“update mode” -> 设置为“none”。然后重启VSCode。
(3)更新集群server
如果VSCode已经更新,已经出现连不上集群的问题,但是又不想安装旧版本VSCode,可以尝试更新集群中的vscode-server。
检查集群版本是否支持。
ldd--versioncat/etc/redhat-release豆包说需要满足
GNU libc >= 2.28 , CentOS 8+ / Ubuntu 20.04+,我不太确定它给的答案是否绝对正确。我这里是GUN libc 2.34、Rocky Linux release 9.4 (Blue Onyx)。确认VSCode Remote结构
cd~/.vscode-serverls-la在我处理的过程中,发现豆包给的文件目录和我的不一样,所以需要先检查一下集群实际的文件结构。它的意思是,如果有
bin目录,就在bin下执行接下来的步骤,如果没有,就在这个目录就可以。找到commitID
在VSCode 的help -> about中,查看commitID。下载新版服务端
需要把下面网址替换成刚才的commitID。wgethttps://update.code.visualstudio.com/commit:你的commitID/server-linux-x64/stable-Ovscode-server.tar.gz成功,如图。
解压并安装
tarzxf vscode-server.tar.gz --strip-components=1--overwritermvscode-server.tar.gz