VS远程开发
VS远程开发
该文记录使用 Visual Studio 2022
进行 Linux
远程开发。
VS远程开发
要做 Linux
开发,但是本机环境是 Windows
,于是采用 VS
实现远程开发和调试。
1. 环境
Windows11
Visual Studio 2022
UOS20
2. UOS20配置
2.1. SSH
2.1.1. 安装及启动
1
2
3
4
5
6
# 安装
sudo apt install ssh
# 启动
sudo systemctl restart sshd.service
# 自启动
sudo systemctl enable sshd.service
2.1.2. 配置文件
SSH
配置文件路径 /etc/ssh/sshd_config
,一般需要开启端口和 root
权限。
1
2
3
4
Port 22 # 设置SSH的端口号是22(默认端口号为22)
ListenAddress 0.0.0.0 # 设置服务监听的地址
PermitRootLogin yes # 允许root用户登陆
PasswordAuthentication yes # 是否允许密码验证
2.2. 配置环境
1
2
3
4
5
6
7
8
# 下载gcc/g++
sudo apt install gcc
sudo apt install g++
sudo apt install gdb
# 下载cmake
sudo apt install cmake
# 下载ninja
sudo apt install ninja-build
如果不能满足自己的环境需求,可以自己下载源码进行编译。
3. Visual Studio配置
3.1. VS 组件安装
- 使用 C++ 的桌面开发
- Linux, Mac, and embedded development with C++
VS
主界面选择【继续但无需代码】
3.2. 修改 CMake 默认配置
CMake
配置文件选择【从不使用CMake预设】,自定义 CMakeSettings.json
可以控制更精细。
CMake
配置步骤选择【永不自动运行配置步骤】,所有改好后手动生成,减少卡顿。
3.3. CMake 项目
创建或打开一个 cmake
工程
3.4. 管理连接
点击【管理连接】
点击【添加】按钮,根据提示输入远程系统信息,创建连接
3.5. 管理配置
点击【管理配置】
可以根据提示进行选择,但是为了熟悉了过后直接点击【编辑JSON】,进行 json
编辑更加简单和准确
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
"configurations": [
{
"name": "Linux-GCC-Debug",
"generator": "Ninja",
"configurationType": "Debug",
"cmakeExecutable": "cmake",
"remoteCopySourcesExclusionList": [ ".vs", ".git", "out", "build*" ],
"cmakeCommandArgs": "-D\"QT_PATH=/opt/deepin-shared-libs/Qt5.15.10gles/\" -D\"SCCM_TEST=ON\"",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"inheritEnvironments": [ "linux_x64" ],
"remoteMachineName": "1053509393;172.18.82.240 (username=scca, port=22, authentication=Password)",
"remoteCMakeListsRoot": "$HOME/.vs/${projectDirName}/${workspaceHash}/src",
"remoteBuildRoot": "$HOME/.vs/${projectDirName}/${workspaceHash}/out/build/${name}",
"remoteInstallRoot": "$HOME/.vs/${projectDirName}/${workspaceHash}/out/install/${name}",
"remoteCopySources": true,
"rsyncCommandArgs": "-t --delete",
"remoteCopyBuildOutput": false,
"remoteCopySourcesMethod": "rsync",
"remoteCopyExcludeDirectories": [],
"intelliSenseMode": "linux-gcc-x64",
"remoteCopyUseCompilerDefaults": true
}
]
configurationType
:编译类型remoteCopySourcesExclusionList
:拷贝到远程不包含文件cmakeCommandArgs
:cmake 条件编译
点击【配置缓存】,或者根据提示点击【生成】,就会把项目数据拷贝到远程环境,并进行 cmake
构建工程
3.6. 项目运行
右键项目点击全部生成即可,如果已经适配即可全部编译成功
选择其中一个可以运行项目,选择【设置为启动项】,这样就可以和正常 Windows
上开发一样可以运行和调试了。
4. 总结
4.1. 终端
点击【视图】【终端】,可以打开一个命令行终端,可以在下拉框选择添加的远程连接。
参考
本文由作者按照 CC BY 4.0 进行授权