文章目录
win10下vscode远程VB下centos7,调试c++
写在开头
配置这个,是因为在学习cs144的时候,需要编写代码,进行测试用例的调试。可恨自己不是mac,不能无缝开发。双系统对于我这种从不关机的来说太痛苦了,每次都要关机开机,来回横跳。所以就想着搞个VirtualBox->Centos7。其实我更建议买个云服务器,这样不用自己配置虚拟机,省事多了。然后就开始在centos上搞了,搞完一个lab0,噢噢,还行,肉眼debug,强行debug,lab1就GG了,实在受不了,就根据互联网前辈们的cs144环境搭建文章,自己也摸索了3、4天,总算把这个环境给配置好了,希望接下来能好好写lab,不辜负我这几天的幸苦。
如果有学习 cs144 的兄弟,可以私信我,一起讨论。
注:这篇配置是我针对调试 cs144 而配置的,但是也能跑其他的项目,嘿嘿😄
遇到问题可以先看下面的问题总结
必要条件
windows
- openssh :确保win的cmd运行 ssh --version 命令能看到版本号
- vscode
虚拟机
- cmake
- gcc g++ gdb 8.x 以上
- 能和主机相互 ping 通
- 能上网
配置过程
我讲的很简单,建议看这位老哥的配置过程,非常详细。
Windows使用VSCode远程Linux(ConteOS)开发/调试C/C++(超详细)
查看虚拟机 IP 地址,centos7 是 ip addr即可查看
Remote Development
在vs code左侧列图表中,找到Extensions,然后搜索Remote Development,安装 Remote Development插件【这个包括了wsl、ssh、contains】,安装成功后,会在相同列下方出现Remote Explore(远程资源管理器)图标。点进去,选择添加,再选择当前用户下的 .ssh\config文件。
Host centos # 名称(随便乱写)
HostName x.xx.x.x # ip
User Happy # 远程登录用户名
IdentityFile ~/.ssh/id_rsa_32 # 私钥文件,如果没配置,默认使用 [UserHome]/.ssh/下的私钥文件(私钥文件如果不成功,需要检查文件权限问题。有时候直接从linux复制文件过来可以,但是windous本地创建文件再粘贴内容就不行)
然后连接成功后是这样的
配置c++
插件安装
- c/c++中文
- 简化
![image-20210610205601312](https://gitee.com/HappyBinbin/pcigo/raw/master/image-20210610205601312.png)
编译配置
建议先阅读
vscode做C++开发,launch.json、tasks.json、settings.json写法示例
我主要想讲的是这部分,vscode的各种配置,配置不好就无法debug,这里也是搞了我最久时间的地方。
在虚拟机上随便一个位置创建一个测试程序,test1.cpp,点击左侧的运行和调试,ctrl+shift+p,然后随便选择一项,我这里选择的g++
lanuch.json
以上会在.vscode文件夹下,生成一个tasks.json的配置文件,和默认配置
以下是我修改好的配置,每个人的可能都不太一样,请认真看注释
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++ - 生成和调试活动文件", //名称,就是调试程序的名称,这个随便写
"type": "cppdbg", //配置类型,一般都是 cppdbg
"request": "launch", //请求配置类型,默认 launch
// "program": "${fileDirname}/${fileBasenameNoExtension