ROS学习2 - 集成开发环境

2023-10-31

一、终端

  • 一个窗口可打开多个终端,实现分屏,ROS操作更整洁。
  • 安装
sudo apt install terminator
  • 快捷键
Alt+Up                          //移动到上面的终端
Alt+Down                        //移动到下面的终端
Alt+Left                        //移动到左边的终端
Alt+Right                       //移动到右边的终端
Ctrl+Shift+O                    //水平分割终端
Ctrl+Shift+E                    //垂直分割终端
Ctrl+Shift+Right                //在垂直分割的终端中将分割条向右移动
Ctrl+Shift+Left                 //在垂直分割的终端中将分割条向左移动
Ctrl+Shift+Up                   //在水平分割的终端中将分割条向上移动
Ctrl+Shift+Down                 //在水平分割的终端中将分割条向下移动
Ctrl+Shift+S                    //隐藏/显示滚动条
Ctrl+Shift+F                    //搜索
Ctrl+Shift+C                    //复制选中的内容到剪贴板
Ctrl+Shift+V                    //粘贴剪贴板的内容到此处
Ctrl+Shift+W                    //关闭当前终端
Ctrl+Shift+Q                    //退出当前窗口,当前窗口的所有终端都将被关闭
Ctrl+Shift+X                    //最大化显示当前终端
Ctrl+Shift+Z                    //最大化显示当前终端并使字体放大
Ctrl+Shift+N or Ctrl+Tab        //移动到下一个终端
Ctrl+Shift+P or Ctrl+Shift+Tab  //Crtl+Shift+Tab 移动到之前的一个终端

二、vscode安装

因为国内做的比较好的自动驾驶百度用的vscode IDE开发的。

1. 安装 vscode(2种方式)

(1)官网下载 linux - .deb - 64bit

  • 双击.deb安装包,安装即可
  • 或通过下面命令安装
sudo dpkg -i xxx.deb

(2)ubuntu software -->搜索code,并install

2. 卸载 vscode

sudo dpkg --purge code

3. 将vscode添加到右侧的收藏夹

点击屏幕右下角9个小圆点 -->顶端搜索code–>右键Add to Favorites(添加到收藏夹)

4.安装插件

点击vscode右侧的extensions–>搜索插件(c++,CMake Tools,Python,ROS
在这里插入图片描述

三、vscode使用

1.创建工作空间

mkdir -p ~/demo1_ws/src
cd ~/demo1_ws
catkin_make

2. 启动vscode

cd ~/demo1_ws

code.之间有个空格

code .

打开vscode后,在当前目录下
在这里插入图片描述

3.配置编译

快捷键 ctrl + shift + B 调用编译,选择:catkin_make:build -->点击后面的设置(小齿轮)

  • 方式一:替换.vscode/tasks.json 文件为以下内容
{
// 有关 tasks.json 格式的文档,请参见
    // https://go.microsoft.com/fwlink/?LinkId=733558
    "version": "2.0.0",
    "tasks": [
        {
            "label": "catkin_make:debug", //代表提示的描述性信息
            "type": "shell",  //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
            "command": "catkin_make",//这个是我们需要运行的命令
            "args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
            "group": {"kind":"build","isDefault":true},
            "presentation": {
                "reveal": "always"//可选always或者silence,代表是否输出信息
            },
            "problemMatcher": "$msCompile"
        }
    ]
}
  • 方式二:仅修改group,其他原封不动:
 "group": {"kind":"build","isDefault":true},

配置后,按快捷键ctrl + shift + b,编译整个工作空间

5.创建功能包

vscode中,在~/demo1_ws下的src右键 -->最下方Create Catkin Package -->在上方弹出的提示框中依次输入:

  • 功能包名hello
  • 依赖rospy roscpp std_msgs

为了避免依赖打字输入错误,ctrl + shift + b编译,查看是否出错。

6 c++终端输出字符串

6. 1 创建c++源文件

(1)~/demo1_ws/src/hello下的src文件夹,右键New File -->输入文件名hello_c.cpp
(2)编写hello_c.cpp文件

  • 输入main -->如下提示,选择前面是黑框的。会自动生成main()
    在这里插入图片描述
  • 删除形参中char const *argv[]中的关键字const
    在这里插入图片描述
  • 没有自动补全,需要设置
    修改~/demo1_ws/.vscode中的c_cpp_properties.json文件
    在这里插入图片描述
    25行,将cppStandard的值改为c++17。就会有代码提示

在这里插入图片描述

6.2 配置CMakeLists.txt文件

注意:修改hello功能包下的CMakeLists.txt文件。而不是~/demo1_ws/src下面的CMakeLists.txt文件。
在这里插入图片描述
(1)修改add_executable()

  • ctrl + / 取消注释
  • add_executable(可执行文件名 src/.cpp文件名)
    可执行文件名:自己可随意命名,通常和.cpp文件去除后缀名称一致。
add_executable(hello_c src/hello_c.cpp)

(2)修改target_link_libraries()

  • 选中多行,ctrl + / 取消注释
  • 只需把可执行文件名填写到第一个参数
target_link_libraries(hello_c
  ${catkin_LIBRARIES}
)

在这里插入图片描述

(3)配置完毕,ctrl + shift + b编译,如果不报错,配置成功。

6.3 配置工作空间的环境变量

点击终端右侧的+,打开一个在~/demo1_ws目录下的bash终端
在这里插入图片描述在这里插入图片描述

  • ~/demo1_ws工作空间的环境变量写入.bashrc文件中
echo "source ~/demo1_ws/devel/setup.bash" >>~/.bashrc
  • 使修改后的.bashrc文件,生效
source ~/.bashrc
  • 检查ROS的环境变量中是否有~/demo1_ws工作空间的环境变量
echo $ROS_PACKAGE_PATH

在这里插入图片描述

6.4 执行ROS节点

(1)bash终端输入:roscore
(2)bash终端输入:rosrun hello hello_c (rosrun 功能包名 可执行文件名)

  • 如果不能自动补全,需要手敲打。

在这里插入图片描述

四、vscode的快捷键

ctrl + shift + k    //删掉选中的代码(一行、多行)
ctrl + / 	 		//添加、消除选中文本的注释(一行、多行)。不限语言!!!	
ctrl + shift + b   //编译 (写完源文件、修改完配置文件后,检查写的是否有错误)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ROS学习2 - 集成开发环境 的相关文章

  • 汤博乐开发工具

    我想创建 Tumblr 主题 有趣的是有没有 IDE Netbeans Eclipse PHPStorm 插件或开发工具 理想的情况是在浏览器中预览我的主题 而不将其上传到 Tumblr 谢谢 我找到了自己的方法来使用 PhpStorm 或
  • 使用 PHPstorm 让 php 代码在浏览器中执行

    因此 当我单击 运行 时 PHPstorm 正在其控制台中正常运行 php 代码 这很好 但我想在浏览器中看到它 所以我在 PHPstorm 中创建了一个新的 PHP Web 应用程序 将服务器设置为 localhost 8000 现在 当
  • 什么是好的跨平台 C++ IDE? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 它需要有良好的代码完成支持 调试器和浏览代码的好方法 单击以转到文档 由于我被 Java IDE Eclipse 宠坏了 如果它支持重构
  • 在 Rstudio 上浏览 R 代码的高效递归方式?

    我正在使用 RStudio 我开始觉得有必要通过包代码来更深入地理解或破解某些功能 当我尝试使用导航时使用 Ctrl 单击鼠标 http www rstudio com ide docs using navigation对于包内定义的函数
  • python - Atom IDE 如何启用自动完成代码以查看模块中的所有函数

    我正在为我的 python 项目使用atom IDE 在某些情况下有自动完成建议 但我想知道是否可以列出导入模块具有的所有可能功能 例如 如果我导入import urllib当我打字时urlib 并按 ctrl tab 想要查看包含可能使用
  • 用于 PHP 开发的 Eclipse PDT 与 NetBeans [已关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 对于 PHP 开发 Eclipse PDT 与 NetBeans 相比如何 我刚刚买了一台装有 Windows 7 的新电脑 我开始设置
  • 有没有办法在 JetBrains“运行配置”中仅运行“外部工具”

    JetBrains IDE 中的所有 或几乎所有 运行配置 都提供了一个选项来运行 外部工具 作为其执行的一部分 有没有办法only在运行配置中运行外部工具 不知道为什么你需要它 我可以建议尝试 Bash 支持插件 http plugins
  • 设置 eclipse 进行 Windows 驱动程序开发

    我正在尝试使用 WDK 7 1 0 编写用户模式 Windows XP Vista 和 7 虚拟打印机驱动程序 我打算使用 eclipse IDE 进行开发 所以想知道是否可以进行相同的设置 我希望做以下事情 1 Eclipse 能够识别
  • Visual Studio Professional 2013 Update 5 中的“在线服务不可用”问题

    我一直在 vscode 2013 工作直到今天 但是 当我今天早上尝试打开 IDE 时 它收到 您的许可证已过时 必须更新 错误消息 如下所示 在我尝试更新许可证和登录操作之后 当我尝试这两个时 它得到 在线服务不可用 请稍后重试 错误消息
  • Netbeans 版本控制文件颜色代码?

    我试图找到一个图例来帮助解释 NetBeans 用于描述文件状态的不同颜色 我的一些文件颜色是 Grey Blue Green 还有其他我还没有发现的 如果有帮助 我将使用带有 CVS 的 Netbeans 6 7 这些颜色是什么 绿色意味
  • 最佳 Fortran IDE [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 stackoverflow上有人用Fortran吗 您使用什么 IDE 您认为哪一个是最好的 似乎我周围的很多人都对 Intel Visu
  • Visual Studio IDE 中功能后的空间

    如何设置 Visual Studio 中的设计以在我的 javascript 函数后面放置一个空格 目前 当我按下返回键时 我得到了这个 var myfunc function 当我想要这个的时候 var myfunc function 知
  • Selenium IDE-自动化Select2搜索框

    我正在尝试自动化 selenium IDE 中的 select2 搜索框 我打开它并输入了我正在搜索的搜索关键字 但是 即使我有用于显示结果的代码 它也不起作用 问题是我猜字符输入得太快 因此结果不会显示在搜索框中 我确信我在某个地方出错了
  • Spyder 未检测到导入的 python 文件中的更改

    我正在使用 Spyder 3 2 4 Python 3 6 Spyder 不会检测导入的 python 文件中的更改 例如 测试2 py def func return 5 测试1 py import test2 a test2 func
  • R 编程常用工具

    如果已经以不同的方式问过这个问题 我深表歉意 但我找不到任何达到我想要的东西 我真的是从其他软件包 SPSS 开始接触 R 的 当我了解真正可以做什么时 我意识到我还需要其他 工具 这让我想到了我的问题 您有哪些用于开发 R 代码的设置 我
  • 如何使用 ClangCodeModel 插件在 QtCreator 中设置 C++ 标准?

    抱歉 如果这是一个愚蠢的问题 但我已经尝试了几乎所有的方法 现在正在用头撞墙 问题是 带有 Clang 代码模型插件的 QtCreator 4 8 0 beta for Windows 解析我的项目 为 C 98 而实际上它是 C 17 但
  • JavaScript IDE/编译器

    现在 我希望你们中的一些人能够理解我的要求 我是编程新手 我在 Codecademy com 上了解了 JavaScript 我使用 labs codecademy com 来编写 JavaScript 但它有限制 对于编程新手来说 我可以
  • 是否有一个“轻型版本”IntelliJ IDEA 可以在没有项目的情况下编辑文件?

    可以从命令行在单个文件上调用 IntelliJ IDEA 如此处所述 将 IntelliJ IDEA 作为 Diff 或合并命令行工具运行 https www jetbrains com help idea running intellij
  • Eclipse:C/C++ 插件下载链接?

    我下载了 Eclipse 3 5 1 的 Java EE 版本 我现在可以使用它通过适当的插件来编辑 C C 吗 我去了Help gt gt 安装新软件但我不知道使用哪个 URL 来获取 C C 插件 我在 Eclipse 网站上也找不到它
  • 如何成功使用 VIM 作为 Code::Blocks 的外部编辑器?

    我真的很喜欢 Code Blocks 的构建系统和单步调试能力 也就是说 我真的很喜欢使用 gcc gdb 的包装器 而不是从 Makefile 或命令行使用它们 问题是 多年来使用 VIM 使我的大脑受到了严重损伤 或者有些人可能会说被宠

随机推荐

  • Github上传项目报错:error: src refspec master does not match any

    想把自己在本地写好的项目上传到github 结果路途坎坷 记下历程 仅供参考 参考的第一个文档最后一步git push u origin master我却不成功 显示如下错误 于是参考网上的解决办法 把命令的最后的master改成main
  • MyBatis的XML映射文件(二)

    文章目录 动态SQL if choose trim foreach 缓存 一级缓存 二级缓存 第三方缓存 个人博客 动态SQL note 动态 SQL 是 MyBatis 的强大特性之一 如果你使用过 JDBC 或其它类似的框架 你应该能理
  • 张飞硬件设计与开发 学习笔记(第一部 线性稳压电源设计) 含理解,超详细!

    第一部 线性稳压电源的设计 前言 一 线性稳压电源的设计 1 课程概述 交流到直流降压简介 2 整流原理介绍 电阻选型 二极管介绍 3 电容的理解与选型 4 稳压电路的设计流程 5 元件详细选型 6 稳压管 三极管应用 成本控制方案二 总结
  • [获取数据集] 数据分析、机器学习获取开放的数据集

    获取数据集 数据分析 机器学习获取开放的数据集 不管数据分析还是机器学习 用真实的数据比用虚拟的数据得出的结果要好 以下是一些比较流行的开放数据存储库 里面有成千上万覆盖各个领域的数据 流行的开放数据存储库 UC Irvine Machin
  • @Cacheable使用spring缓存

    一 首先了解spring自带的注解 首先在启动类需要开启该功能 package com frame util import org mybatis spring annotation MapperScan import org spring
  • 标准c库打开创建文件读写文件光标移动

    fopen 函数 fopen只能配合使用fread fwrite等不能是read write 例子 include
  • GitHub怎样fork别人代码到自己仓库并进行贡献

    场景 比如说现在有一个很牛逼的项目 我们进入项目地址 想将这个项目复制到自己的github仓库 然后你还想将 仓库中的代码拉取到本地进行修改 修改完你还要将本地的 修改后的代码推送到自己的github仓库 更甚至你还想将自己 复制过来并修改
  • Python3数据挖掘之百度资讯搜索数据并入库(最新)

    因百度搜索页关键字内容改变 更新关键字增加正则表达式的编写 增加对批量内容爬取后的入库操作 另外需要注意学会修改正则里面变更后的内容 下面截图使用不同的颜色简单说明下 import requests import re import pym
  • Pytorch 学习(十):Pytorch 模型在 CPU 与 GPU 上的迁移

    Pytorch 模型在 CPU 与 GPU 上的迁移 本方法总结自 动手学深度学习 Pytorch版 github项目 Pytorch计算时必须保证模型和参与当前过程的所有数据都在同一个设备 GPU 或 CPU 上 CPU 与 GPU 的相
  • (附源码)springboot毕业生跟踪调查管理系统 毕业设计 061528

    springboot毕业生跟踪调查管理系统 摘 要 信息化社会内需要与之针对性的信息获取途径 但是途径的扩展基本上为人们所努力的方向 由于站在的角度存在偏差 人们经常能够获得不同类型信息 这也是技术最为难以攻克的课题 针对毕业生跟踪调查管理
  • 2月24日--3月2日(共18小时,剩4599小时)

    2月24日1小时 周日打游戏太困了 2月25日 共8小时 上午3小时DX11 下午2小时DX11 晚上3小时软引擎 2月26日 共3小时 上午2小时DX11 中午1小时软引擎 2月27日共3小时 2月28日 共3小时 3月1日 共3小时 3
  • CMAKE : INCLUDE命令

    指令 include 作用 从文件或模块加载并运行CMake代码 形式 include
  • 第一章:Linux(Ubuntu)环境下OpenCV的安装配置和实例,亲测可用

    目录 1 安装环境 1 1 安装C 开发环境 安装编译器GCC和G 1 2 安装build essential 1 3 安装cmake 1 4 安装依赖库 1 5 安装OpenCV 下载OpenCV连接OpenCV 1 6 配置环境变量 1
  • Spring2.0中新的Bean类型实现原理

    我们知道 在Spring2 0中 除了singleton及prototype两种类型的Bean以外 默认情况下还增加了request session及global session三种类型的Bean 增加的三种类型的Bean主要应用于Web应
  • wordpress实现全站生成html静态缓存文件-wp全站静态化

    如何让wordpress网站访问速度变的飞快 怎样做好wordpress网站的安全防护 答案是一个方法即可解决 那就是实现全站html静态化 网上有很多实现wordpress缓存的插件 很多都不尽人意 要么是收费的 要么是英文版的 或者根本
  • FFmpeg学习笔记--FFplay简单过滤器、FFmpeg命令参数

    目录 1 FFplay简单过滤器 2 FFmpeg命令参数 2 1 主要参数 2 1 1 i设定输入流 2 1 2 f设定输出格式 2 1 3 ss设定开始时间 2 1 4 t设定时间长度 2 1 5 代码实例 2 2 音频参数 2 2 1
  • ROS工作空间workspace的创建以及launch文件的编写

    workspace工作空间以及launch文件的编写 建立工作空间 建立 工作空间目录 回到主目录 cd 在主目录创建一个名字为my ws的文件夹 并且在my ws 文件夹里面建立一个名为src的文件夹 p的作是建立子目录 mkdir p
  • 腾讯技术创作特训营二期开班,用写作开启职业新爆点(内含福利)

    技术人的人生 大多都是持续不断地在与代码 bug 的斗争中度过 996爆肝 35岁危机 职业发展瓶颈 数不清的压力正在席卷着技术人 按部就班地工作 似乎成了一道枷锁 锁死了很多技术人员的创造力 也锁死了未来的职业方向 你有没有想过 是否能通
  • 资产管理系统 CMDB 详解

    两年前笔者在一个中小型互联网公司做运维 当时我们经理在机房 花了半天找一台服务器 但是服务器搞错了 悲剧了 当时我们的做法是用了一个 Excel 很多时候更新不及时 重启一台机器 拔一根网线都提心吊胆 那个时候如果有一个资产管理系统的话就可
  • ROS学习2 - 集成开发环境

    集成开发环境 一 终端 二 vscode安装 1 安装 vscode 2种方式 2 卸载 vscode 3 将vscode添加到右侧的收藏夹 4 安装插件 三 vscode使用 1 创建工作空间 2 启动vscode 3 配置编译 5 创建