vscode用SSH远程开发c语言

vscode配置远程

这里我使用虚拟机进行展示,首先需要你的虚拟机安装好ssh

没安装好就执行下面的命令安装并开启服务

sudo apt-get install ssh
sudo service ssh start
ps -e | grep ssh

vscode安装 remote-ssh扩展

在这里插入图片描述

点击左下角的远程连接,我这里已经连接好一个虚拟机了,所以有一个ip名字。
在这里插入图片描述

连接到主机

在这里插入图片描述

第一次连接,添加新的ssh主机

在这里插入图片描述

通过输入ssh 虚拟机用户名@虚拟机ip添加,如我的就是ssh iceylia@172.18.190.85

在这里插入图片描述

输入密码后

会打开一个config文件,其中Host是名字,可以随便设置。

在这里插入图片描述

关掉重新点击左下角的远程连接,连接到主机
此时以及有刚刚添加的虚拟机

在这里插入图片描述

点击后输入密码确定即可。

安装c++插件

将这些插件配置好,中文不是必要的
在这里插入图片描述

编译c程序

远程环境需要先配置好g++还有gdb以及gcc

sudo apt install g++
sudo apt install gdb
sudo apt install gcc

如果想要执行简单的c程序,可以直接点击右上角,但是复杂程序不行。
在这里插入图片描述

命令行

假如不想学CmakeLists或者makefile,到这里直接用命令行编译也行,但是编译大程序就很麻烦

比如有一个test.cpp程序

g++ -o test test.cpp

在这里插入图片描述
直接执行就可
在这里插入图片描述
这里就不讲如何用命令行编译更复杂的程序了

Makefile

Makefile是对命令行命令的封装,makefile能实现所以cmake能实现的功能。

Makefile就是将命令行编译的内容集中到一个文件里面

比如下面是一个简单的makefile
在这里插入图片描述

test:test.o
	g++ test.o -o test
test.o:test.cpp
	g++ -c test.cpp

执行make后就能自动执行
在这里插入图片描述

cmake

需要先安装好

sudo apt install g++

此时写一个简单的CmakeLists.txt放到主程序下
在这里插入图片描述

cmake_minimum_required(VERSION 3.0)

project(test)

# CMAKE_CXX_FLAGS是预设的变量,用于存放c++编译选项
# 下面代码将原有的编译选项取出,在后面附加上c++0x标准,也可以-std=c++11、-std=c++14 或者 -std=c++17
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")

add_definitions("-Wall -g")

# 生成可执行文件
add_executable(${PROJECT_NAME} test.cpp)
mkdir build # 创建一个build文件夹
cd build # 打开build
cmake .. # 执行上级的Makelists

此时会有很多cmake相关文件生成,最重要的就是makefile
在这里插入图片描述
我们可以通过make命令生成可执行文件。

之后只要文件结构没有被修改,直接使用make命令即可。

被修改了,就需要重新写cmakelists并且执行cmake 命令.

运行linux图形化程序

主机配置

首先需要下载一个xserver的应用,比如 vcxsrv
打开XLaunch
在这里插入图片描述
一开始设置display为10
最后设置勾选Disable access control
其余默认

vscode配置

打开config文件,在连接时的配置ssh主机中
在这里插入图片描述
加上下面两行代码

ForwardX11 yes
ForwardX11Trusted yes

在这里插入图片描述

服务端配置

设置环境变量为主机ip+冒号+display ip:display, 之前设置XLaunch为10,这是也是10.

export DISPLAY=192.168.231.110:10.0

查看是否设置成功

echo $DISPLAY

在这里插入图片描述
运行测试程序

xeyes

会出现如下窗口
在这里插入图片描述

密钥

打开主机命令行

ssh-keygen -t ras -C "备注内容" -t 代表密钥类型,这里是ras型。

在这里插入图片描述

C:\Users\用户名\.ssh下能找到生成的密钥id_rsa和公钥id_rsa_pub。

需要将id_rsa_pub放到服务端的~/.ssh/authorized_keys文件中,没有就创建,名字不能变。

实现方式有很多,笔者用cat追加到authorized_keys下,注意id_rsa.pub需要根据自身情况修改,笔者放到当前目录下,所以就一个名字。

cat id_rsa.pub >> ~/.ssh/authorized_keys

最后打开vscode的远程配置,添加本地密钥位置

IdentityFile "C:\Users\iceylia\.ssh\id_rsa"

在这里插入图片描述

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值