二、开发环境篇:4.vscode远程编写、编译、调试代码
可以通过vscode连接Linux远程编写、编译、调试代码。
1 安装vscode
VS Code官网:https://code.visualstudio.com/Download
双击VSCode安装包,点击“我同意此协议”,然后点击“下一步”。
如果c盘没有位置,可修改安装路径(建议安装到其他盘,避免c盘太满),修改好后点击“下一步”。
点击“下一步”。
一定要勾选“添加到Path”,其他的也可以勾选上,然后点击“下一步”
点击“安装”。
耐心等待安装结束。安装完成后不用运行VSCode。
2 VSCode连接linux
2.1 安装ssh插件
1.安装remote ssh插件
- 安装完毕后左侧多了一个图标
2.2 配置服务器
1.安装remote ssh完成后,点击下图示中红色箭头指向图标。
2.点击后在正上方搜索框内会出现提示,点击“连接到主机”,然后再点“配置ssh主机”、接着点第一个文件(这是配置文件)
比如 ssh ********** -A
然后右下角有提示
进入初始界面
可以先在终端使用命令创建一个写代码的目录,比如cpp_test
然后 OK 回车
此时写代码还不支持自动补全,那怎么办,需要再安装插件才行。
2.3 查找之前的远程会话
3 配置C/C++自动跳转和补全
在远程连接Linux主机的状态下操作。
比如
3.1 安装插件
先安装以下插件:
- C/C++
安装完毕后 ,就能自动补全头文件和函数了。
#include <iostream> #include <pthread.h> using namespace std; void test() { cout << "test\n"; } int main() { cout << "hello word\n"; test(); return 0; }
3.2 编译代码
找到 Terminal -> New Terminal。
就可以用命令编译代码了
如果报错
4 vscode运行和debug代码
小工程使用C/C++插件即可。
4.1 创建 tasks.json
在上方的主菜单中,选择 Terminal>Configure Default Build Task ,将出现一个下拉菜单,显示 C++ 编译器的各种预定义编译任务
上述操作将自动在.vscode文件夹下生成tasks.json文件。 其中代码类似如下(这里我选了两个,其实也没有影响,这里cpp文件用的是g++):
{ "version": "2.0.0", "tasks": [ { "type": "cppbuild", "label": "C/C++: gcc build active file", "command": "/usr/bin/gcc", "args": [ "-fdiagnostics-color=always", "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "options": { "cwd": "${fileDirname}" }, "problemMatcher": [ "$gcc" ], "group": "build", "detail": "compiler: /usr/bin/gcc" }, { "type": "cppbuild", "label": "C/C++: g++ build active file", "command": "/usr/bin/g++", "args": [ "-fdiagnostics-color=always", "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "options": { "cwd": "${fileDirname}" }, "problemMatcher": [ "$gcc" ], "group": { "kind": "build", "isDefault": true }, "detail": "compiler: /usr/bin/g++" } ] }
2.3 调试Debug hello.cpp
创建launch.json
launch.json 文件用于在 Visual Studio Code 中配置调试器。接下来将创建launch.json 文件。
从主菜单中,选择 Run > Add Configuration…,选择C++ (GDB/LLDB)
将自动生成launch.json文件。
然后Run -> Start Debugging,就可以开始debug了。
如果调试的时候出现:
则参考:[教程] VS Code 没有用于调试 JSON with Comments 的扩展?_哔哩哔哩_bilibili
5 调试大型项目进阶,安装clangd
初学者不建议安装clangd,有些麻烦,可能会导致之前的C/C++插件代码补全和跳转也不能使用。
暂时就先不提供教程了。
C/C++学习难度较大且方向较多,设置的开发环境也比较多,为了节省大家的时间,程序员老廖我创建了该知识库,大家可以参考知识库的文章系统学习。