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

ROS移植机器人小车:问题集

网上买了个机器人小车,却发现发给我的树莓派硬件不兼容卖家的系统,小车装好了不想再拆装折腾,没办法只能自己安装编译,这里记录一下自己碰到的ROS程序编译问题。

源码由卖家提供,不过我找了一下,发现各家提供的源码大同小异,估计都来自开源项目的改编。

对于这些问题,在ubuntu18.04上,安装时碰到的全部问题的解决办法包括下面的指令

sudo apt install libqt4-dev
sudo apt install ros-melodic-rosserial-python -y
sudo apt install ros-melodic-costmap-2d -y
sudo apt install ros-melodic-geographic-msgs -y
sudo apt install ros-melodic-move-base-msgs -y
sudo apt install libgeographic-dev -y
sudo apt install libv4l-dev
sudo apt-get install libudev-dev

catkin_make -DCATKIN_WHITELIST_PACKAGES="clb_msgs"
catkin_make -DCATKIN_WHITELIST_PACKAGES=""

catkin_make -DCATKIN_WHITELIST_PACKAGES="riki_msgs"
catkin_make -DCATKIN_WHITELIST_PACKAGES=""

catkin_make -DCATKIN_WHITELIST_PACKAGES="exploration_msgs"
catkin_make -DCATKIN_WHITELIST_PACKAGES=""

我的树莓派安装的是ubuntu20.04,所以解决起来有点费劲,melodic要改成noetic,我详细记录了全部问题,分成2个贴子,

ROS移植机器人小车:问题集(2)_tanmx219的博客-CSDN博客

好,言归正传,现在开始列举ROS noetic安装碰到的问题,如下,

========================================================

CMake Error at /usr/share/cmake-3.16/Modules/FindQt4.cmake:1314 (message):
  Found unsuitable Qt version "5.12.8" from /usr/bin/qmake, this code
  requires Qt 4.x
Call Stack (most recent call first):
  lidar/hector_slam/hector_geotiff/CMakeLists.txt:12 (find_package)

在ubuntu18.04或树莓派上的解决办法,

sudo apt install qt4-default 

在ubuntu20.04上,因为不再支持QT4,所以解决办法有点不同,

==============================================================

CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "rosserial_python"
  with any of the following names:

    rosserial_pythonConfig.cmake
    rosserial_python-config.cmake

  Add the installation prefix of "rosserial_python" to CMAKE_PREFIX_PATH or
  set "rosserial_python_DIR" to a directory containing one of the above
  files.  If "rosserial_python" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  clbrobot_project/clbrobot/CMakeLists.txt:7 (find_package)
-- Configuring incomplete, errors occurred!

解决办法,

sudo apt install ros-noetic-rosserial-python -y

========================================================

CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "costmap_2d" with
  any of the following names:

    costmap_2dConfig.cmake
    costmap_2d-config.cmake

  Add the installation prefix of "costmap_2d" to CMAKE_PREFIX_PATH or set
  "costmap_2d_DIR" to a directory containing one of the above files.  If
  "costmap_2d" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  m-explore/explore/CMakeLists.txt:5 (find_package)

解决办法,

sudo apt install ros-noetic-costmap-2d -y

========================================================

CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "geographic_msgs"
  with any of the following names:

    geographic_msgsConfig.cmake
    geographic_msgs-config.cmake

  Add the installation prefix of "geographic_msgs" to CMAKE_PREFIX_PATH or
  set "geographic_msgs_DIR" to a directory containing one of the above files.
  If "geographic_msgs" provides a separate development package or SDK, be
  sure it has been installed.
Call Stack (most recent call first):
  robot_localization/CMakeLists.txt:9 (find_package)

解决办法,

sudo apt install ros-noetic-geographic-msgs -y

========================================================

CMake Error at robot_localization/CMakeLists.txt:35 (find_package):
  By not providing "FindGeographicLib.cmake" in CMAKE_MODULE_PATH this
  project has asked CMake to find a package configuration file provided by
  "GeographicLib", but CMake did not find one.

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

    GeographicLibConfig.cmake
    geographiclib-config.cmake

  Add the installation prefix of "GeographicLib" to CMAKE_PREFIX_PATH or set
  "GeographicLib_DIR" to a directory containing one of the above files.  If
  "GeographicLib" provides a separate development package or SDK, be sure it
  has been installed.

解决办法,

sudo apt install libgeographic-dev -y

========================================================

CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "move_base_msgs"
  with any of the following names:

    move_base_msgsConfig.cmake
    move_base_msgs-config.cmake

  Add the installation prefix of "move_base_msgs" to CMAKE_PREFIX_PATH or set
  "move_base_msgs_DIR" to a directory containing one of the above files.  If
  "move_base_msgs" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  m-explore/explore/CMakeLists.txt:5 (find_package)

解决办法,

sudo apt install ros-noetic-move-base-msgs -y

========================================================

In file included from /home/ubuntu/noetic/catkin_ws/src/camera_umd/uvc_camera/include/uvc_camera/camera.h:3,
                 from /home/ubuntu/noetic/catkin_ws/src/camera_umd/uvc_camera/src/camera_node.cpp:4:
/home/ubuntu/noetic/catkin_ws/src/camera_umd/uvc_camera/include/uvc_cam/uvc_cam.h:26:10: fatal error: libv4l2.h: No such file or directory
   26 | #include <libv4l2.h>
      |          ^~~~~~~~~~~
compilation terminated.

解决办法,

sudo apt install libv4l-dev

========================================================

解决办法,

========================================================

参考:

TX2-ros机器人移植调试第一弹——catkin_make的error_vslyu的博客-CSDN博客

相关文章:

  • ROS移植机器人小车:问题集(2)
  • Linux查看IP地址的几种方法
  • linux常用命令:查看硬件配置的方法示例(含Jetson)
  • anaconda安装opencv -> python[version=‘>=2.7,<2.8.0a0|>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0‘]
  • VIM的一些常指令和用法
  • 如何自定义FileZilla编辑文件的默认打开方式
  • 如何在 Ubuntu 和其它 Linux 发行版中更改时区
  • OpenVINO: export failure: libpython3.9.so.1.0: cannot open shared object file: No such file or direc
  • udev规则以及编写
  • ROS + UDEV管理开源小车rikirobot的USB设备
  • (ros//EnvironmentVariables)ros环境变量
  • ROS移植机器人小车:小车主机与从机电脑的通信
  • Linux查看版本和系统信息
  • ROS移植机器人小车: rikirobot试运行
  • Linux+Grub启动引导修复错误:Gnu Grub Version 2.04 Minimal BASH-like editing is supported...
  • gcc介绍及安装
  • jdbc就是这么简单
  • MySQL几个简单SQL的优化
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 阿里研究院入选中国企业智库系统影响力榜
  • 彻底搞懂浏览器Event-loop
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 七牛云 DV OV EV SSL 证书上线,限时折扣低至 6.75 折!
  • 前端存储 - localStorage
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • python最赚钱的4个方向,你最心动的是哪个?
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • ​Spring Boot 分片上传文件
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • .mysql secret在哪_MySQL如何使用索引
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net core控制台应用程序初识
  • .net core使用ef 6
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .NET Standard 的管理策略
  • .NET企业级应用架构设计系列之技术选型
  • @EventListener注解使用说明
  • [ C++ ] STL---string类的使用指南
  • [145] 二叉树的后序遍历 js
  • [acwing周赛复盘] 第 69 场周赛20220917
  • [bzoj1038][ZJOI2008]瞭望塔
  • [cb]UIGrid+UIStretch的自适应
  • [ios-必看] IOS调试技巧:当程序崩溃的时候怎么办 iphone IOS
  • [leetcode] Multiply Strings
  • [Noi2015]程序自动分析
  • [SpringCloud | Linux] CentOS7 部署 SpringCloud 微服务
  • [分类整理III]微软等100题系列V0.1版之三:栈、堆、队列面试题集锦
  • [后端] 微服务的前世今生
  • [论文笔记]GTE