【ROS 最简单教程 005/300】ROS + VSCode 开发环境快速搭建

news2024/9/17 8:56:55

在这里插入图片描述

VSCode 全称 Visual Studio Code,是微软出的一款轻量级代码编辑器,免费、开源而且功能强大

  • 本篇将以最简单的方法引导基于 VSCode 的,超全面开发环境的搭建及相关配置
  • 完全不了解 ROS 编程的友友,建议先看 👉快速体验 指路

💜 VSCode 下载 & 安装

  • 下载获得 .deb 👉官网下载地址指路
    sudo dpkg -i xxxx.deb  		## 安装
    sudo dpkg --purge  code  	## 卸载
    

💜 VSCode 插件安装

  • 安装 C++, Python, ROS, CMake Tools 等插件
  • ROS 为例:① 点击左侧插件按键,② 输入 ROS 搜索插件,③ 点击 install 进行安装
    在这里插入图片描述

💜 使用 VSCode 打开工作空间

  • 先创建工作空间,👉详细示例指路,不熟悉的友友可点击跳转
    mkdir -p tutu_ws/src
    cd tutu_ws
    catkin_make
    
  • 使用 VSCode 打开创建的工作空间
    code .  ## 注意,在 工作空间 目录下执行 
    

💜 使用 VSCode 编译 ROS: Ctrl + Shift + B

  • 需要修改 .vscode/tasks.json 配置文件为:
    {
    	// 有关 tasks.json 格式的文档,请参见
        // https://go.microsoft.com/fwlink/?LinkId=733558
        "version": "2.0.0",
        "tasks": [
            {
                "label": "catkin_make:debug",
                "type": "shell", 
                "command": "catkin_make",
                "args": [],
                "group": {"kind":"build","isDefault":true},
                "presentation": {
                    "reveal": "always"
                },
                "problemMatcher": "$msCompile"
            }
        ]
    }
    

💜 使用 VSCode 显示 ROS 编程代码提示

  • 需要修改 .vscode/c_cpp_properties.json 配置文件为:
    {
      "configurations": [
          {
              "name": "ROS",
              "includePath": [
                  "${workspaceFolder}/**",
                  "/opt/ros/noetic/include"  // 注意这里根据自己的 ros 修改
              ],
              "compilerPath": "/usr/bin/gcc",
              "cStandard": "c11",
              "cppStandard": "c++17",
              "intelliSenseMode": "clang-x64"
          }
      ],
      "version": 4
    }
    
    

💜 使用 VSCode 显示 CMake 风格代码

  • 默认为文本模式,可以点击右下角切换 CMake 风格
    在这里插入图片描述

希望对你有帮助呀!!💜💜 如操作遇到任何问题,欢迎大家留言互助 ~ 一起加油叭 💦
欢迎关注、订阅专栏 【ROS 学习笔记】谢谢你的支持!


另外,使用ROS需要 C++ 或者Python的编程经验,我的博客主页也有相关的教程发布,需要的友友自取!
参考资料: ROS理论与实践在线文档, B站视频教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1962816.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WIFI7在游戏领域引发的变革

随着无线技术的快速进步,游戏体验正变得愈加丰富、复杂和逼真。现在最新的WIFI 7技术将带来新的飞跃,不仅有望重新定义网络游戏的体验,还有可能彻底革新整个游戏产业。可以想象一下,在未来,游戏世界不再有延迟和连接中…

【嵌入式】一种基于串口命令的模块测试API模板

本文主要记录一种用于嵌入式开发中【模块测试】通用模板,使用 getopt_long()函数作为串口命令行解析的工具,从而进行测试代码逻辑的编写。 本文以ADC 和 uart 测试为例,介绍函数的使用以及测试代码的编写 【测试环境说明 】 本文是在 rt-thr…

一篇长文搭建AI大模型应用平台架构

在研究了6家知名公司如何部署生成式AI应用程序后,注意到它们的平台有很多相似之处。概述了生成式AI大模型应用平台的常见组件、它们的作用以及它们的实现方式。尽力保持架构的通用性,但某些应用程序可能会有所不同。 Generative AI大模型应用平台整体架…

数据集相关类代码回顾理解 | StratifiedShuffleSplit\transforms.ToTensor\Counter

【PyTorch】图像多分类项目 目录 StratifiedShuffleSplit transforms.ToTensor Counter StratifiedShuffleSplit sss StratifiedShuffleSplit(n_splits1, test_size0.2, random_state0) 创建StratifiedShuffleSplit对象,用于将数据集划分为训练集和测试集。 …

农业物联网气象站的工作原理

TH-NQ10农业物联网气象站是一款集成了物联网与气象技术的创新设备,它在现代农业中扮演着重要角色,为农业生产提供了精准、实时的气象数据支持。以下是对农业物联网气象站的详细介绍: 定义与特点 农业物联网气象站通过物联网技术将气象观测设…

详解校门外的树(树状数组)

前言 在看之前建议先看一下 【学习笔记】详解树状数组-CSDN博客 题目 思路 建立两个树状数组,维护左括号与右括号。 假设有一个长度为10的数轴,我们要将区间[ 2 , 5 ]中种树,这时,我们将 2 处放一个左括号 ” ( ” ,5处放一个 ” )” &…

负载均衡的作用、负载均衡常用处理方式、四层和七层负载均衡的区别、及配置方法

一、负载均衡的作用 解决服务器的高并发压力,提高应用程序的处理性能; 提供故障转移,实现高可用; 通过添加或减少服务器数量,增强网站的可扩展性; 在负载均衡器上进行过滤,可以提高系统的安…

FreeModbus学习——定时器

FreeModbus版本:1.6 协议栈初始化时会初始化定时器: eMBInit → eMBRTUInit → xMBPortTimersInit( ( USHORT ) usTimerT35_50us ) 协议栈使能时会使能定时器: eMBEnable → pvMBFrameStartCur → eMBRTUStart → vMBPortTimersEnable 定时…

【Vulnhub系列】Vulnhub_Dr4g0n_b4ll 靶场渗透(原创)

【Vulnhub系列靶场】Vulnhub_Dr4g0n_b4ll靶场渗透 原文转载已经过授权 原文链接:Lusen的小窝 - 学无止尽,不进则退 (lusensec.github.io) 一、环境搭建 选择打开.ovf 文件 配置名称和路径 打开后调整网络连接模式为【NAT】即可 二、信息收集 1、主机…

MySQL安装教程(保姆级)

1. 首先要了解自己的计算机 打开设置——系统——系统信息 然后就可以知道自己计算机的类型了。 2. 下载MySQL 2.1. 来到MySQL官网 点击进入 我们下拉页面,可以找到DOWNLOADS 页面默认给咱们选择最新的版本,咱们不用,咱们尽量选一个稳定的版…

解决vscode+UE5中vscode无法识别头文件,无法函数无法跳转,也无法自动补全的问题。

一、概述 接上一条博客,虽然解决了报错的问题,但是实际上的问题却没有解决,无论我怎么点击,其都无法完成跳转,也无法完成自动补全的问题。 在网络上搜索了很多资料后,发现是在使用vscode时候UE5在vscode中的…

对零基础想转行网络安全同学的一点建议

最近有同学在后台留言,0基础怎么学网络安全?0基础可以转行做网络安全吗?以前也碰到过类似的问题,想了想,今天简单写一下。 我的回答是先了解,再入行。 具体怎么做呢? 首先,你要确…

深入源码:解析SpotBugs (5)BugReportor

常见的 Bug 定位后,通过 bugReport的reportBug(BugInstance) 方法,将bug 发布出来。 一般的 Detector 经检测后会调用 bugReportor.reportBug 方法或者 BugAccumulator.accumulateBug 。 在GUI中,分析结束后会在下框…

2024年投放必应bing国内广告,顶级技巧与策略!

随着企业对于高效、精准的广告投放需求日益增强,微软必应Bing广告平台以其独特的优势,正成为众多品牌投放广告的理想选择。云衔科技凭借其专业的必应Bing国内广告开户及代运营服务,助力企业精准触达目标受众,实现品牌影响力和市场…

ESP-ADF适配到自定义开发板中

ESP-ADF适配到自定义开发板中 前言:项目开发完了,来记录一下开发过程。 安装: 这里采用vscode+ESP-IDF+ESP-ADF的开发方式。 安装esp-idf的方法很简单,网上都是,这里不说了。想用esp-adf那么你idf的环境肯定是已经搭建好了。 安装adf也很简单,一步完成。 按下F1,选…

软考网工:2024年下半年各地区报名时间(附赠真题)

根据软考办《关于2024年度计算机技术与软件专业技术资格(水平)考试工作安排及有关事项的通知》(计考办〔2024〕1号)可以得知,2024年下半年网络工程师将于8月19日至9月15日开放考务管理服务平台,各地组织报名。 各地2024年下半年网络工程师报名时间不同&…

科普文:万字梳理高性能 Kafka快的8个原因

概叙 科普文:万字详解Kafka基本原理和应用-CSDN博客 科普文:万字梳理31个Kafka问题-CSDN博客 我们都知道 Kafka 是基于磁盘进行存储的,但 Kafka 官方又称其具有高性能、高吞吐、低延时的特点,其吞吐量动辄几十上百万。 在座的…

绝密!OceanBase OBCP备考模拟题讲解(1)

博主首页 : 「源de爸讲数据库」每天优先更新OceanBase OBCP题库及全网独家超详细题目解析! 现如今,一大批国产数据库随着国产化浪潮,已经逐步被越来越多的人认可。OceanBase便是其中一个优秀代表。 做这个日更专题,…

麒麟V10系统统一认证子系统国际化

在适配麒麟V10系统统一认证子系统国际化过程中, 遇到了很多的问题,关键是麒麟官方的文档对这部分也是粗略带过,遇到的问题有: (1)xgettext无法提取C源文件中目标待翻译的字符串。 (2)使用msgf…

【Python正则-驯化】一文学会通过Python中的正则表达式提取文本中的网址

【Python正则-驯化】一文学会通过Python中的正则表达式提取文本中的网址 本次修炼方法请往下查看 🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地! 🎇 免费获取相关内容…