当前位置: 首页 > news >正文

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

选项一 直接使用命令行编译

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

比如有一个test.cpp程序

g++ -o test test.cpp

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

选项二 MakeLists(推荐)

打开运行和调试
在这里插入图片描述
点击创建launch.json

创建后,点击显示所有自动调试配置,添加配置
在这里插入图片描述
选择gdb启动,自动就写好了。

此时写一个简单的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)

点击test.cpp,此时右上角的调试和运行都能执行。

在这里插入图片描述
测试调试功能只需要加个断点,点击调试。
在这里插入图片描述
需要注意在第二次启动的时候可能会让你配置cmake的地址,不需要选择windows的cmake,不用设置,空着即可。

选项三 Makefile

Makefile是对命令行命令的封装,cmake生成的就是一个makefile文件,所以命令行命令是最基本的,makefile能实现所以cmake能实现的功能。

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

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

test:test.og++ test.o -o test
test.o:test.cppg++ -c test.cpp

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

相关文章:

vscode用SSH远程开发c语言

vscode配置远程 这里我使用虚拟机进行展示,首先需要你的虚拟机安装好ssh 没安装好就执行下面的命令安装并开启服务 sudo apt-get install ssh sudo service ssh start ps -e | grep sshvscode安装 remote-ssh扩展 点击左下角的远程连接,我这里已经连接…...

鸿蒙Next 支持数据双向绑定的组件:Checkbox--Search--TextInput

Checkbox $$语法,$$绑定的变量发生变化时,会触发UI的刷新 Entry Component struct MvvmCase { State isMarry:boolean falseStatesearchText:string build() {Grid(){GridItem(){Column(){Text("checkbox 的双向绑定")Checkbox().select($$…...

跨越时空的纽带:探索Facebook如何连接人与人

引言 Facebook作为全球最大的社交媒体平台之一,已经成为了人们日常生活中不可或缺的一部分。它不仅仅是一个社交网络,更是连接人与人、人与世界的纽带。在这篇文章中,我们将深入探讨Facebook如何跨越时空,连接人与人之间的关系&a…...

LabVIEW湍流等离子体束热效率优化

LabVIEW湍流等离子体束热效率优化 利用LabVIEW虚拟仪器技术,对湍流等离子体束的热效率进行了实时监测与优化,提高其在材料处理领域的应用效率和精度。通过双进气湍流等离子体发生器,实现了在不同工作参数下对热效率的实时在线监测&#xff0…...

21个 JVM 技术点详解(附面试解答)

最近兄弟们面试,都逃不过被 JVM 问题轰炸的命运,为啥面试官喜欢拿 JVM 说事呢?V 哥认为,除了要问倒你,就是要压你薪水,咱绝对不能怂,俗话说的好:兵来将挡,水来土掩&#…...

mysql逗号分隔字段拆成行简述

概述 在实际业务中总有一些字段内容是逗号分隔的,然后后续业务需要扩展时就很难受; 所以一般在这种情况下都是需要建立关联表,将字段内容拆分; 当前使用mysql版本 8.0.32 拆分demo 这里要注意mysql.help_topic表的记录行数&a…...

最新梨花带雨网页音乐播放器二开优化修复美化版全开源版本源码下载

最新梨花带雨网页音乐播放器二开优化修复美化版全开源版本源码下载 梨花带雨播放器基于thinkphp6开发的XPlayerHTML5网页播放器前台控制面板,支持多音乐平台音乐解析。二开内容:修复播放器接口问题,把接口本地化,但是集成外链播放器接口就不本地化了,我花钱找人写的理解下…...

golang 操作redis

1. redis操作需要引入 github.com/gomodule/redigo/redis 包 go get github.com/gomodule/redigo/redis 2.封装redis操作对象,使用时便可调用 redis的 地址、端口、密码 放配置文件,用config获取即可 package databaseimport ("gin/config"…...

macOS - 获取硬件设备信息

文章目录 1、CPU获取方式 一: system_profiler获取方式二:sysctl, machdepmachdep 2、内存3、硬盘4、显卡5、声卡6、光驱7、系统序列号8、型号标识符9、UUID 等信息 10. 计算机名称 1、CPU 获取方式 一: system_profiler % syst…...

突破编程_C++_STL教程( queue 的基础知识)

1 std::queue 概述 std::queue 是 C 标准模板库(STL)中的一种容器适配器,它提供了队列(Queue)这种数据结构的功能。队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作…...

Hystrix 容错机制数据监控可视界面无法加载

在微服务项目中创建一个Hystrix模块配置好pom和yml文件但是在加载可视化界面的时候报如下问题 第一个界面报的错误 第二个界面报错误 熔断监控图形化界面报错Unable to connect to Command Metric Stream 解决方案 在yml文件在加如下代码 代码块 hystrix:dashboard:proxy…...

【Java】POI解析excel

一、相关介绍 POI技术 Apache POI是Apache软件基金会的开放源码函式库&#xff0c;POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 poi-ooxml能解析xls&#xff0c;xlsx。 poi能解析word、ppt、excel、xml等office软件 导入坐标&#xff1a; <depende…...

AI浸入社交领域,泛娱乐APP如何抓住新风口?

2023年是大模型技术蓬勃发展的一年&#xff0c;自ChatGPT以惊艳姿态亮相以来&#xff0c;同年年底多模态大模型技术在国内及全球范围内的全面爆发&#xff0c;即模型能够理解并生成包括文本、图像、视频、音频等多种类型的内容。例如&#xff0c;基于大模型的文本到图像生成工具…...

遥感图像地物分类流程

遥感图像地物分类流程 1. 制作标签 使用arcgis pro或者arcgis或者envi&#xff0c;画标签&#xff0c;保存为tiff格式 2. 处理标签数据 用python gdal库安装 osgdal库&#xff0c;如果安装失败就需要下载 对应库得 .whl去安装&#xff0c;网站具体搞忘了&#xff0c;可以百…...

JS13-事件的绑定和事件对象Event

绑定事件的两种方式/DOM事件的级别 DOM0的写法&#xff1a;onclick element.onclick function () {}举例&#xff1a; <body> <button>点我</button> <script>var btn document.getElementsByTagName("button")[0];//这种事件绑定的方式…...

pycorrector检测OCR错字实践

参考&#xff1a;https://github.com/shibing624/pycorrector/tree/master/examples/macbert stopwords.txt 添加专业停用词&#xff0c;避免错误 设置自定义词典&#xff0c;避免将正确的词错误检测成错误的词 from pycorrector import Corrector m Corrector() m.set_cus…...

RDD算子介绍(三)

1. join 将相同的key的值连接在一起&#xff0c;值的类型可以不同 val rdd1 : RDD[(String, Int)] sc.makeRDD(List(("a", 1), ("b", 2), ("c", 3))) val rdd2 : RDD[(String, Int)] sc.makeRDD(List(("a", 4), ("b", 5…...

Redis的脑裂问题

Redis 脑裂&#xff08;Split-brain&#xff09;问题是指在分布式系统中&#xff0c;特别是基于主从复制和哨兵&#xff08;Sentinel&#xff09;模式的Redis集群中&#xff0c;由于网络分区&#xff08;network partition&#xff09;而导致部分节点组成了独立可用的服务&…...

【算法】雪花算法生成分布式 ID

SueWakeup 个人中心&#xff1a;SueWakeup 系列专栏&#xff1a;学习Java框架 个性签名&#xff1a;人生乏味啊&#xff0c;我欲令之光怪陆离 本文封面由 凯楠&#x1f4f7; 友情赞助播出! 目录 1. 什么是分布式 ID 2. 分布式 ID 基本要求 3. 数据库主键自增 4. UUID 5. S…...

FFplay使用滤镜添加字幕到现有视频显示

1.创建字幕文件4k.srt 4k.srt内容: 1 00:00:01.000 --> 00:00:30.000 日照香炉生紫烟2 00:00:31.000 --> 00:00:60.000 遥看瀑布挂前川3 00:01:01.000 --> 00:01:30.000 飞流直下三千尺4 00:01:31.000 --> 00:02:00.000 疑是银河落九天2.通过使用滤镜显示字幕在视…...

【实战解析】ESP12F在STA+AP双模下的无线网卡实现与驱动优化

1. ESP12F双模工作原理深度解析 ESP12F模块作为ESP8266系列中的明星产品&#xff0c;其STAAP双模工作能力堪称物联网开发的"瑞士军刀"。想象一下你的手机既能连接家里路由器&#xff08;STA模式&#xff09;&#xff0c;又能开热点给平板用&#xff08;AP模式&#…...

Winhance中文版:3步解决Windows系统卡顿与臃肿问题

Winhance中文版&#xff1a;3步解决Windows系统卡顿与臃肿问题 【免费下载链接】Winhance-zh_CN A Chinese version of Winhance. C# application designed to optimize and customize your Windows experience. 项目地址: https://gitcode.com/gh_mirrors/wi/Winhance-zh_CN…...

2026 门禁选型指南:哪种门禁兼顾工程易用性与全场景适配?

在门禁项目交付中&#xff0c;我们经常遇到两类痛点&#xff1a;一是用户觉得不好用——屏幕反光、操作复杂、反馈不清晰&#xff1b;二是安装维护太麻烦——设备笨重、接线复杂、调试费时。这两类痛点如果解决不好&#xff0c;即使识别算法再先进&#xff0c;最终也会被投诉“…...

别再只会用默认图例了!Matlab legend函数这5个隐藏技巧,让你的论文图表瞬间高级

科研图表进阶&#xff1a;5个Matlab legend函数高阶技巧让你的论文脱颖而出 在学术论文和科研报告中&#xff0c;图表是展示研究成果的核心载体。许多研究者花费大量时间优化数据曲线和坐标轴&#xff0c;却忽略了图例&#xff08;legend&#xff09;这一关键元素——它不仅是…...

Akagi雀魂AI辅助工具:从麻将新手到高手的完整指南

Akagi雀魂AI辅助工具&#xff1a;从麻将新手到高手的完整指南 【免费下载链接】Akagi 支持雀魂、天鳳、麻雀一番街、天月麻將&#xff0c;能夠使用自定義的AI模型實時分析對局並給出建議&#xff0c;內建Mortal AI作為示例。 Supports Majsoul, Tenhou, Riichi City, Amatsuki,…...

免费AI图像视频放大神器:5分钟掌握Waifu2x-Extension-GUI完整使用指南

免费AI图像视频放大神器&#xff1a;5分钟掌握Waifu2x-Extension-GUI完整使用指南 【免费下载链接】Waifu2x-Extension-GUI Video, Image and GIF upscale/enlarge(Super-Resolution) and Video frame interpolation. Achieved with Waifu2x, Real-ESRGAN, Real-CUGAN, RTX Vid…...

【生成即度量】:用AST语义指纹替代行数统计,实现AI代码贡献度原子级归因(实测降低技术债误判率41%)

第一章&#xff1a;【生成即度量】&#xff1a;用AST语义指纹替代行数统计&#xff0c;实现AI代码贡献度原子级归因&#xff08;实测降低技术债误判率41%&#xff09; 2026奇点智能技术大会(https://ml-summit.org) 传统基于行数&#xff08;LOC&#xff09;或Git blame的贡献…...

AI写专著高效之道:AI专著生成工具,20万字专著快速搞定

学术专著写作与AI工具应用 学术专著的主要价值在于其内容的条理清晰和逻辑严谨&#xff0c;但这一点在写作过程中常常是最大的挑战。与专注于单一话题的期刊论文不同&#xff0c;专著的撰写需要构建一个包括绪论、理论基础、核心研究、应用拓展及结论的完整体系。每个章节都应…...

校招面试PCB岗,没有项目经验就拿这三点补

不瞒各位说&#xff0c;当初找工作的时候&#xff0c;简历上那个"项目经历"栏差点给我整秃了。你说嵌入式开发、电子竞赛&#xff0c;好歹还能写点东西。但PCB设计这东西&#xff0c;学校教的和实际用的&#xff0c;感觉是两个世界。投了几个大厂的PCB岗&#xff0c;…...

STM32项目交付新姿势:用CoFlash把.bin/.elf文件甩给客户,告别源码工程

STM32项目交付新姿势&#xff1a;用CoFlash实现二进制文件的安全传递 在嵌入式开发领域&#xff0c;知识产权保护与高效协作往往是一对难以调和的矛盾。传统开发模式下&#xff0c;工程师不得不将完整的Keil或CubeIDE工程源码打包交付给客户或生产部门&#xff0c;这不仅暴露了…...