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

安装ROS-Academy-for-Beginners教学包时安装依赖的时候老是失败

安装ROS-Academy-for-Beginners教学包时安装依赖的时候老是失败

鱼香ROS介绍:

鱼香ROS是由机器人爱好者共同组成的社区,欢迎一起参与机器人技术交流。
进群加V:fishros2048

文章信息:

标题:安装ROS-Academy-for-Beginners教学包时安装依赖的时候老是失败
原文地址:https://fishros.org.cn/forum/api/topic/83
关键词:
参与者: 849646037,小鱼,
版权声明: 文章中所有知识产权归鱼香ROS及原作者所有。


1. 849646037看着电脑说:

如图是一本书上的教程,到了安装ROS-Academy-for-Beginners教学包中安装依赖这步,我用小鱼的办法已经将rosdep升级了:

失败结果是:

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

我的乌班图是16.04.7,安装的是Kinetic版本,目前可以正常测试ROS的吉祥物–小海龟



2. 小鱼看着天空说:

@849646037 这个是针对kinetic版本特有的错误。因为该版本已经eol(不在维护)了。

所以进行rosdepc update时需要增加参数 --include-eol-distros

rosdep update --include-eol-distros

之后再次调用rosdep intstall

你先试一下,不行再反馈。当然rosdep指令也可以使用apt进行替代,比如这个包

slam_sim_demo: Cannot locate rosdep definition for [hector_mapping]

你可以使用,将[hector_mapping]改成hector-mapping,加上前缀ros-kinetic-然后使用apt进行安装也可。

sudo apt install ros-kinetic-hector-mapping

最后再次帮你改了下格式,下次注意哈,可以看看[提问的智慧](https://fishros.org.cn/forum/topic/25/%E6%8F%90%E9%97%AE%E7%9A%84%E6%99%BA%E6%85%A7)一文



3. 小鱼掰着手指头说:

@849646037 你的图片看不到,修改一下格式哈~代码记得用代码块包裹一下。
8f59a985-e1e8-41f8-8d34-23680a5f2e74-image.png 晚点回复。



4. 小鱼看着电脑说:

@849646037 这个是针对kinetic版本特有的错误。因为该版本已经eol(不在维护)了。

所以进行rosdepc update时需要增加参数 --include-eol-distros

rosdep update --include-eol-distros

之后再次调用rosdep intstall

你先试一下,不行再反馈。当然rosdep指令也可以使用apt进行替代,比如这个包

slam_sim_demo: Cannot locate rosdep definition for [hector_mapping]

你可以使用,将[hector_mapping]改成hector-mapping,加上前缀ros-kinetic-然后使用apt进行安装也可。

sudo apt install ros-kinetic-hector-mapping

最后再次帮你改了下格式,下次注意哈,可以看看[提问的智慧](https://fishros.org.cn/forum/topic/25/%E6%8F%90%E9%97%AE%E7%9A%84%E6%99%BA%E6%85%A7)一文



5. 849646037吃着火锅说:

@小鱼
十分感谢!我按照你说的进行rosdepc update时增加了参数 --include-eol-distros,显示成功,如下:

欢迎使用国内版rosdep之rosdepc
我是作者小鱼,更多ROS学习资源请关注公众号鱼香ROS

小鱼rosdepc开始为您服务---------------
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://gitee.com/ohhuo/rosdistro/raw/master/rosdep/osx-homebrew.yaml
Hit https://gitee.com/ohhuo/rosdistro/raw/master/rosdep/base.yaml
Hit https://gitee.com/ohhuo/rosdistro/raw/master/rosdep/python.yaml
Hit https://gitee.com/ohhuo/rosdistro/raw/master/rosdep/ruby.yaml
Hit https://gitee.com/ohhuo/rosdistro/raw/master/releases/fuerte.yaml
Query rosdistro index https://gitee.com/ohhuo/rosdistro/raw/master/index-v4.yaml
Add distro "ardent"
Add distro "bouncy"
Add distro "crystal"
Add distro "dashing"
Add distro "eloquent"
Add distro "foxy"
Add distro "galactic"
Add distro "groovy"
Add distro "hydro"
Add distro "indigo"
Add distro "jade"
Add distro "kinetic"
Add distro "lunar"
Add distro "melodic"
Add distro "noetic"
Add distro "rolling"
updated cache in /home/zmbsxyt/.ros/rosdep/sources.cache
小鱼恭喜:rosdepc已为您完成更新---------------

随后我运行 $ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
结果显示失败如下:

zmbsxyt@ubuntu:~$ cd ~/tutorial_ws
zmbsxyt@ubuntu:~/tutorial_ws$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
executing command [sudo -H apt-get install -y ros-kinetic-map-server]
[sudo] zmbsxyt 的密码: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
将会同时安装下列软件:
  libasound2-dev libbullet-dev libbulletsoftbody2.83.6 libcaca-dev
  libpulse-dev libsdl-image1.2 libsdl-image1.2-dev libsdl1.2-dev
  libsdl1.2debian libslang2-dev
建议安装:
  libasound2-doc
下列【新】软件包将被安装:
  libasound2-dev libbullet-dev libbulletsoftbody2.83.6 libcaca-dev
  libpulse-dev libsdl-image1.2 libsdl-image1.2-dev libsdl1.2-dev
  libsdl1.2debian libslang2-dev ros-kinetic-map-server
升级了 0 个软件包,新安装了 11 个软件包,要卸载 0 个软件包,有 39 个软件包未被升级。
需要下载 2,651 kB 的归档。
解压缩后会消耗 12.0 MB 的额外空间。
【警告】:下列软件包不能通过认证!
  ros-kinetic-map-server
E: 存在未认证的软件包同时使用了 -y 选项,然而未搭配  --allow-unauthenticated
ERROR: the following rosdeps failed to install
  apt: command [sudo -H apt-get install -y ros-kinetic-map-server] failed

我进行的尝试为:
将之前安装失败的三个包:

slam_sim_demo: Cannot locate rosdep definition for [hector_mapping]
robot_sim_demo: Cannot locate rosdep definition for [yocs_cmd_vel_mux]
navigation_sim_demo: Cannot locate rosdep definition for [dwa_local_planner]

采用您说的将[hector_mapping]改成hector-mapping,加上前缀ros-kinetic-然后使用apt进行安装。
sudo apt install ros-kinetic-hector-mapping
三个包均如此安装之后,显示成功(证据为我再次安装提升已经是最新版)。随后我回到catkin_ws下编译:

$ cd ~/tutorial_ws 
$ catkin_make

其出现一大段文字,我看不懂,但是最后出现了一个错误如下:

-- Configuring incomplete, errors occurred!
See also "/home/zmbsxyt/tutorial_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/zmbsxyt/tutorial_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

随后我进行编译:

$ rospack profile 
$ roslaunch robot_sim_demo robot_spawn.launch

结果失败,显示

[robot_spawn.launch] is neither a launch file in package [robot_sim_demo] nor is [robot_sim_demo] a launch file name
The traceback for the exception was written to the log file

请问现在该如何解决呢?万分感谢



6. 小鱼看着电脑说:

@849646037 通过catkin_make返回的信息可以看出,你应该是make失败的,才导致后面找不到相关的程序运行,失败的原因需要进一步定位,请将catkin_make的结果完整贴出。



7. 849646037喜滋滋的说:

@小鱼 您好,catkin_make完整结果是:

zmbsxyt@ubuntu:~/tutorial_ws$ catkin_make
Base path: /home/zmbsxyt/tutorial_ws
Source space: /home/zmbsxyt/tutorial_ws/src
Build space: /home/zmbsxyt/tutorial_ws/build
Devel space: /home/zmbsxyt/tutorial_ws/devel
Install space: /home/zmbsxyt/tutorial_ws/install
####
#### Running command: "cmake /home/zmbsxyt/tutorial_ws/src -DCATKIN_DEVEL_PREFIX=/home/zmbsxyt/tutorial_ws/devel -DCMAKE_INSTALL_PREFIX=/home/zmbsxyt/tutorial_ws/install -G Unix Makefiles" in "/home/zmbsxyt/tutorial_ws/build"
####
-- Using CATKIN_DEVEL_PREFIX: /home/zmbsxyt/tutorial_ws/devel
-- Using CMAKE_PREFIX_PATH: /opt/ros/kinetic
-- This workspace overlays: /opt/ros/kinetic
-- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.12", minimum required is "2") 
-- Using PYTHON_EXECUTABLE: /usr/bin/python2
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/zmbsxyt/tutorial_ws/build/test_results
-- Found gtest sources under '/usr/src/gmock': gtests will be built
-- Found gmock sources under '/usr/src/gmock': gmock will be built
-- Found PythonInterp: /usr/bin/python2 (found version "2.7.12") 
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.7.29
-- BUILD_SHARED_LIBS is on
-- BUILD_SHARED_LIBS is on
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~  traversing 15 packages in topological order:
-- ~~  - ros_academy_for_beginners (metapackage)
-- ~~  - name_demo
-- ~~  - orbslam2_demo
-- ~~  - param_demo
-- ~~  - rtabmap_demo
-- ~~  - service_demo
-- ~~  - topic_demo
-- ~~  - action_demo
-- ~~  - msgs_demo
-- ~~  - navigation_sim_demo
-- ~~  - robot_sim_demo
-- ~~  - slam_sim_demo
-- ~~  - tf_demo
-- ~~  - tf_follower
-- ~~  - urdf_demo
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin metapackage: 'ros_academy_for_beginners'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/ros_academy_for_beginners)
-- +++ processing catkin package: 'name_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/name_demo)
-- +++ processing catkin package: 'orbslam2_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/orbslam2_demo)
-- +++ processing catkin package: 'param_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/param_demo)
-- +++ processing catkin package: 'rtabmap_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/rtabmap_demo)
-- +++ processing catkin package: 'service_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/service_demo)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- service_demo: 0 messages, 1 services
-- +++ processing catkin package: 'topic_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/topic_demo)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- topic_demo: 1 messages, 0 services
-- +++ processing catkin package: 'action_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/action_demo)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Boost version: 1.58.0
-- Found the following Boost libraries:
--   system
-- Generating .msg files for action action_demo/DoDishes /home/zmbsxyt/tutorial_ws/src/ROS-Academy-for-Beginners/action_demo/action/DoDishes.action
-- action_demo: 7 messages, 0 services
-- +++ processing catkin package: 'msgs_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/msgs_demo)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Generating .msg files for action msgs_demo/AutoDocking /home/zmbsxyt/tutorial_ws/src/ROS-Academy-for-Beginners/msgs_demo/action/AutoDocking.action
-- Generating .msg files for action msgs_demo/AddTwoInts /home/zmbsxyt/tutorial_ws/src/ROS-Academy-for-Beginners/msgs_demo/action/AddTwoInts.action
-- Generating .msg files for action msgs_demo/GetMap /home/zmbsxyt/tutorial_ws/src/ROS-Academy-for-Beginners/msgs_demo/action/GetMap.action
-- Generating .msg files for action msgs_demo/MoveBase /home/zmbsxyt/tutorial_ws/src/ROS-Academy-for-Beginners/msgs_demo/action/MoveBase.action
-- msgs_demo: 42 messages, 9 services
-- +++ processing catkin package: 'navigation_sim_demo'
-- ==> add_subdirectory(ROS-Academy-for-Beginners/navigation_sim_demo)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
  Could not find a package configuration file provided by
  "controller_manager" with any of the following names:

    controller_managerConfig.cmake
    controller_manager-config.cmake

  Add the installation prefix of "controller_manager" to CMAKE_PREFIX_PATH or
  set "controller_manager_DIR" to a directory containing one of the above
  files.  If "controller_manager" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  ROS-Academy-for-Beginners/navigation_sim_demo/CMakeLists.txt:3 (find_package)


-- Could not find the required component 'controller_manager'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by
  "controller_manager" with any of the following names:

    controller_managerConfig.cmake
    controller_manager-config.cmake

  Add the installation prefix of "controller_manager" to CMAKE_PREFIX_PATH or
  set "controller_manager_DIR" to a directory containing one of the above
  files.  If "controller_manager" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  ROS-Academy-for-Beginners/navigation_sim_demo/CMakeLists.txt:3 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/zmbsxyt/tutorial_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/zmbsxyt/tutorial_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed


8. 小鱼吃着火锅说:

@849646037 仔细看一下你的错误提示,找不到control_manager,所以手动安装以下就好了。

Could not find a package configuration file provided by
  "controller_manager" with any of the following names:

    controller_managerConfig.cmake
    controller_manager-config.cmake

  Add the installation prefix of "controller_manager" to CMAKE_PREFIX_PATH or
  set "controller_manager_DIR" to a directory containing one of the above
  files.  If "controller_manager" provides a separate development package or
  SDK, be sure it has been installed.
sudo apt install ros-<version>-controller-manager


9. 849646037看着天空说:

@小鱼 谢谢小鱼!



相关文章:

  • OpenCV实战案例——车道线识别
  • 【Linux】进程控制 创建/终止/等待/替换
  • 【Linux】远程登陆、远程开发以及Vim的使用
  • Java项目本地部署宝塔搭建实战校园二手市场系统源码
  • EMC诊断技术及电磁兼容理论设计
  • 洛谷——【入门1】顺序结构题解
  • 计算机视觉 立体视觉极简一览
  • envoy开发调试环境搭建
  • 多线程轮流打印 ABC
  • SpringCloud整合spring security+ oauth2+Redis实现认证授权
  • 轻量级开源ROS 的机器人设备(一)
  • java基于微信小程序的校园报修系统 uniapp小程序
  • IDEA详细配置『JDK | Maven | Tomcat』
  • 视觉目标检测大模型套件detrex-调研
  • Docker搭建私有镜像仓库与WordPress
  • 【React系列】如何构建React应用程序
  • Android交互
  • Asm.js的简单介绍
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • github从入门到放弃(1)
  • HTML5新特性总结
  • HTTP--网络协议分层,http历史(二)
  • JavaScript HTML DOM
  • Java程序员幽默爆笑锦集
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • mac修复ab及siege安装
  • maven工程打包jar以及java jar命令的classpath使用
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • Redis 中的布隆过滤器
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • SQLServer之创建数据库快照
  • Terraform入门 - 3. 变更基础设施
  • 半理解系列--Promise的进化史
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 复习Javascript专题(四):js中的深浅拷贝
  • 回顾2016
  • 前端技术周刊 2019-02-11 Serverless
  • 软件开发学习的5大技巧,你知道吗?
  • 手机端车牌号码键盘的vue组件
  • 提醒我喝水chrome插件开发指南
  • 我这样减少了26.5M Java内存!
  • 小程序button引导用户授权
  • 优化 Vue 项目编译文件大小
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​2021半年盘点,不想你错过的重磅新书
  • # 数据结构
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (2)STL算法之元素计数
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用