《机器人操作系统入门》课程代码示例安装出错解决方法

2023-11-19

问题描述:

学习《机器人操作系统入门》课程时,在Ubuntu 16.04 上安装了kinetic,安装ROS-Academy-for-Beginners时依赖总是报错,如下所示:

rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y

报错,如下图所示

~/catkin_ws$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
robot_sim_demo: Cannot locate rosdep definition for [yocs_cmd_vel_mux]
navigation_sim_demo: Cannot locate rosdep definition for [gmapping]
slam_sim_demo: Cannot locate rosdep definition for [hector_mapping]

大概率是在rosdep init 时候失败了,无法链接官网的github,有些安装包没能更新。我在解决rosdep init 失败的问题时,是参考了一个方法,使用rosdepc init,当时看起来成功了,没想到后面还是有坑。

~/catkin_ws$ rosdep init
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

此时,在网上搜索了很多方法,都没有解决。后来在评论区看到一种方法,直接使用

sudo apt-get install ros-kinetic-yocs-cmd-vel-mux

安装以下报错的依赖

robot_sim_demo: Cannot locate rosdep definition for [yocs_cmd_vel_mux]

直接安装成功了

解决方法:

然后就根据这个规律,缺少什么就安装什么。

如:

~/catkin_ws$ rosdep install -y --from-paths src --ignore-src --rosdistro kinetic
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
navigation_sim_demo: Cannot locate rosdep definition for [map_server]
slam_sim_demo: Cannot locate rosdep definition for [slam_karto]

报缺少[map_server]和[slam_karto]

一个一个安装,也可以一条命令同时安装的

sudo apt-get install ros-kinetic-map-server
sudo apt-get install ros-kinetic-slam-karto

依次把依赖安装完成,累计手动安装了10个左右,最终安装成功:

~/catkin_ws$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
#All required rosdeps installed successfully

接下来就可以编译了

catkin_make

编译成功,可以开心的运行示例程序了

Scanning dependencies of target scanmatch_test
[ 97%] Building CXX object openslam_gmapping/CMakeFiles/scanmatch_test.dir/scanmatcher/scanmatch_test.cpp.o
[ 97%] Linking CXX executable /home/cel/catkin_ws/devel/lib/openslam_gmapping/scanmatch_test
[ 97%] Built target scanmatch_test
Scanning dependencies of target slam_gmapping_replay
[ 97%] Building CXX object slam_gmapping/gmapping/CMakeFiles/slam_gmapping_replay.dir/src/slam_gmapping.cpp.o
[ 97%] Linking CXX executable /home/cel/catkin_ws/devel/lib/gmapping/slam_gmapping
[ 98%] Building CXX object slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/src/nodelet.cpp.o
[ 98%] Built target slam_gmapping
[ 98%] Building CXX object slam_gmapping/gmapping/CMakeFiles/slam_gmapping_replay.dir/src/replay.cpp.o
[ 98%] Linking CXX shared library /home/cel/catkin_ws/devel/lib/libslam_gmapping_nodelet.so
[ 98%] Built target slam_gmapping_nodelet
[100%] Linking CXX executable /home/cel/catkin_ws/devel/lib/gmapping/slam_gmapping_replay
[100%] Built target slam_gmapping_replay

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

《机器人操作系统入门》课程代码示例安装出错解决方法 的相关文章

随机推荐

  • 用python绘制RC低通滤波器bode图

    用python绘制RC低通滤波器bode图 Bode图 Bode图 国内有译作 伯德图 也有译作 波特图 是一种用于描述线性系统的频率响应的图形工具 频率响应是指系统对不同频率的输入信号的响应程度 通常用幅度和相位来表示 Bode图以对数坐
  • layui复选框按钮事件(智能去重刷新)

    1 写好复选框 lt input type checkbox value 0 name available title 智能去重 id available lay filter available gt 2 给复选框加事件 form on
  • RMSE数值在什么范围比较好呢

    RMSE Root Mean Squared Error 数值越小越好 通常来说 对于大多数应用来说 RMSE的值在0 1到1之间是可以接受的 当然 这取决于具体的应用和数据 如果数据本身具有很大的方差 那么RMSE的值就会更大
  • 如何制作静态和动态链接库-小白入门

    1 gcc编译过程 gcc为GNU编译套件 GNU Compiler Colletion 2 gcc编译命令 0 o 指定生成目标文件 00 O 设定优化级别 123越大越高 1 I 指定头文件目录 2 D 指定宏 避免修改源代码 3 g
  • 《我的世界》Python编程入门(9) 使用函数建造房子

    一 函数的基本概念 1 1 函数在数学中的概念 函数指一个量随着另一个量的变化而变化 函数的数学形式 y f x f是一种定义好的关系 可以简称为函数 在函数f中 只要x值的确定 那么y的值一定是确定的 y的值随x值的变化而变化 1 2 P
  • 设计模式(5)-适配器模式(Adapter Pattern)

    适配器模式 Adapter Pattern 顾名思义 就像变压器 转接头差不多 就像美国的生活电压是110V 中国是220V 就需要一个变压器将220V转换成110V 或者一个Type C接口想插如USB接口的东西 你就需要一个转换器 而这
  • [附源码]JSP+ssm计算机毕业设计小区疫情物资配送管理系统624kg【源码、数据库、LW、部署】

    项目运行 项目含有源码 文档 程序 数据库 配套开发软件 软件安装教程 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEcl
  • LeetCode题目笔记——2331. 计算布尔二叉树的值

    文章目录 题目描述 题目难度 简单 方法一 经典后序遍历 代码 C C Python 总结 题目描述 给你一棵 完整二叉树 的根 这棵树有以下特征 叶子节点 要么值为 0 要么值为 1 其中 0 表示 False 1 表示 True 非叶子
  • 【开源电机驱动】H 桥驱动-软件篇

    原文地址 http www modularcircuits com blog articles h bridge secrets h bridge control 本文为作者翻译校正稿件 含个人理解批注 H bridge Control H
  • 无需更改注册表 实现CHM文件从共享文件中直接打开

    直接上解决方法 无需更改注册表 将整个CHM文件压缩 在压缩文件中打开 chm文件 就可以正常显示相关内容 1 问题描述 压缩前 两台电脑 A是笔记本电脑 win10系统 B是台式电脑 win7系统 在A中设置了共享文件 并共享给了B CH
  • 别光看NB的Github开源项目,你得参考他们去设计自己的架构!

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 一 背景引入 首先简单介绍一下项目背景 公司对合作商家提供一个付费级产品 这个商业产品背后涉及到数百人的研发团队协作开发 包括各种业务系统来提供很多强大的业务功能 同
  • React 从零开始学习(四)—— 组件交互

    上一节 实现了把一个 prop 从父组件 Board 传递 给了子组件 Square 在 React 应用中 数据通过 props 的传递 从父组件流向子组件 这点跟 vue 是一样的 然后 跟着教程给组件添加交互功能 给组件添加交互功能
  • 简单学习识谱(六线谱)

    简单学习识谱 六线谱 参考资料 简谱的记谱方法 参考资料 吉他自学三月通 简谱的记谱方法 乐谱就是叙述音乐语言的文字 是每个学习音乐的人必须掌握的学习工具 当今世界通用的记谱法有五线谱和简谱 这两种方法都有着各自的特点 五线谱对于记录多声部
  • STM32通用定时器使用详解

    1 通用定时器基本介绍 通用定时器包括TIM2 TIM3 TIM4和TIM5 STM32通用定时器是一个通过可编程预分频器驱动的16位自动装载计数器构成 每个定时器都是完全独立的 没有互相共享任何资源 它们可以一起同步操作 定时器可以进行定
  • main.c(31): warning: #223-D: function “uart_init“ declared implicitly

    Keil5编程之warning 223 D function xxx declared implicitly 1 函数没有头文件中进行声明 在头文件中添加声明 2 定义错误 字母大小可能不一致 仔细看一下出现问题的函数是否在声明和调用时使用
  • C语言入门——适合练手的密码本项目

    一 引言 学C语言有一段时间了 趁着正好做了密码本的小项目 把它分享出来 二 思路与原理 密码本 见名知意 就是存放账号密码 起到备忘录作用的本子 将需要备忘的数据通过加密存放在文本文件中 打开的文本文件为加密文本 需要通过软件查看已经存放
  • 用实际例子理解回调函数(Calback)

    用实际例子理解回调函数 Calback 在我们编码的过程中 调用和回调几乎无处不在 但是我对回调函数到底是怎样一回事并没有一个真正透彻的理解 最近我查找学习了一些资料 学到了很多 我参考了一些知乎上的分享 很不错 https www zhi
  • <数据结构>创建一个单链表

    单链表基本操作的实现 内容 构建线性表的链式存储结构 采用动态分配方式实现单链表的初始化 数据的插入 删除 输出单链表内中各元素 求单链表的长度 实现单链表中数据结点的按值排序 实现单链表的逆置 合并两个有序的单链表 有序的a表和有序的b表
  • node版本管理工具nvm

    1 标题卸载nvm和node js 系统变量中删除nvm添加变量 NVM HOME和NVM SYMLINK 环境变量中 path 删除nvm自动添加的变量 Path NVM HOME NVM SYMLINK 删除自身安装node环境 参考图
  • 《机器人操作系统入门》课程代码示例安装出错解决方法

    问题描述 学习 机器人操作系统入门 课程时 在Ubuntu 16 04 上安装了kinetic 安装ROS Academy for Beginners时依赖总是报错 如下所示 rosdep install from paths src ig