VScode远程Linux开发C/C++
程序员文章站
2022-04-02 23:01:22
...
文章目录
Linux服务端
安装openssh-server
sudo apt-get install openssh-server
openssh-server配置
- 使用ssh localhost命令,生成下.ssh目录
ssh localhost
- 使用ssh-****** -t rsa生成秘钥对
ssh-****** -t rsa
Windows开发端
安装open-ssh
open-ssh官方下载地址:https://github.com/PowerShell/Win32-OpenSSH/releases
open-ssh配置
- 在powershell(或gitbash)命令行中输入,生成私钥和公钥,默认路径在C:\Users\Administrator.ssh
ssh-****** -t rsa
- 将id_rsa_pub传到Linux服务器的/root/.ssh文件夹下
scp /path/filename [username]@[ip address]:/path
#示例
scp id_rsa.pub aaa@qq.com:/root/.ssh
#或直接拷贝
- 在Linux服务器,将id_rsa_pub改为authorized_keys并设置权限为600
mv id_rsa.pub authorized_keys
chmod 600 authorized_keys
vscode安装插件
- Remote Development
- Remote Development配置(或使用下面修改默认配置进行配置)
- 点击VSCode侧边栏的小屏幕标志再点击齿轮配置你的远程信息
- 选择第一个设置,也可以自己另选配置项
- 配置,Host 显示在连接选项中的名字,HostName 你的ssh服务器的地址,User 你登录ssh时的用户名
- Remote SSH
修改默认配置
- 一定要修改默认的配置文件,比如D:\zk\.ssh\config
- 因为默认使用的为:c盘.ssh下的config文件,会和Powershell的冲突(有解决办法,但是麻烦)
vscode链接
- 使用 Ctrl shift + p,输入remote-ssh
- 选择add new ssh host或者configure ssh hosts
- 点击configure ssh hosts后,选择新建的文件夹(如D:\zk\.ssh\config),就是最开始配置的新的配置文件
Host 自定义别名
HostName IP地址
User root
- 右键就可以连接
远程调试运行C/C++代码
Linux端
- 安装gcc/g++编译器
- 安装交叉编译器
Windows端
vscode安装插件
- C/C++
- Code Runner
- Chinese
通过vscode安装插件到Linux中
-
Linux端无需安装VScode安装插件方法
-
安装后
创建tasks.json文件
- 从菜单栏选择Terminal>Configure Default Build Task, 在下拉栏里选择C/C++: g++ build active file. 这会生成tasks.json文件
- 按需修改tasks.json文件
{
"tasks": [
{
//编译源文件
"type": "shell",
"label": "g++ build active file",
"command": "/usr/bin/g++",
"args": [
"-std=c++11", //C++版本, 可不加
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "/usr/bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{ //删除二进制文件
"type": "shell",
"label": "delete output file",
"command": "rm",
"args": [
"${fileDirname}/${fileBasenameNoExtension}"
],
"presentation": {
"reveal": "silent", //删除过程不切换终端(专注程序输出)
}
}
],
"version": "2.0.0"
}
创建launch.json用于调试运行
- 在菜单栏选择Debug>Add Configuration, 选择C++ (GDB/LLDB), 在下拉栏中选择g++ build and debug active file
- 按需修改launch.json文件
{
"version": "0.2.0",
"configurations": [
{
"name": "g++ build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++ build active file",
"postDebugTask": "delete output file",
"miDebuggerPath": "/usr/bin/gdb"
}
]
}
- 这里“preLaunchTask”调用tasks.json文件里定义的“g++ build and debug active file”任务
- “postDebugTask”调用“delete output file”任务用来在程序运行结束后删除二进制文件
调试和运行
调试F5, 不调试直接运行Cltr+F5
推荐阅读