Raspberry Pi 源码安装ROS-Kinetic

这里的测试中rosdep 无法使用, 通过其他方式下载了kinetic-desktop-wet.rosinstall文件,并注销opencv的编译+安装。
如果有些文件/包下载不下来, 请跟我留言把.

1. 前言背景

sudo rosdep init && rosdep update 无法成功,凡是涉及到rosdep的都无法成功;

提醒: 如果你可以设置系统全局VPN那就不用这么麻烦,只需要按照官网源码ROS安装方式继续安装就行了。

如果你没有VPN又要用ROS,那么以下的方法适合你。

2. 源码安装ROS, 逐步安装依赖, 实现ROS源码编译

## 常规ROS官网的步骤1.安装引导依赖关系sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential
2."我用不了"--初始化rosdepsudo rosdep initrosdep update
3.创建catkin工作空间mkdir ~/ros_catkin_wscd ~/ros_catkin_ws
4."我用不了"--ROS-desktop包安装rosinstall_generator desktop --rosdistro kinetic --deps --wet-only --tar > kinetic-desktop-wet.rosinstallwstool init -j4 src kinetic-desktop-wet.rosinstall
5."我用不了"--解析依赖rosdep install --from-paths src --ignore-src --rosdistro kinetic -y  
6.编译catkin工作空间./src/catkin/bin/catkin_make_isolated --install `-DCMAKE_BUILD_TYPE=Release"2-4-5步用不了,导致很多依赖无法自动安装,所以需要你自己手动逐个安装......orz..."
## 非常规ROS官网的步骤
"下面出现的软件包依赖都是我一个一个遇到的坑,然后手动填坑的过程, 如果你遇到了相关问题无法解决,请跟我留言把!"
1. 我在其他PC(全局VPN)上下载下来了kinetic-desktop-wet.rosinstall文件,可以拿来使用...2. 创建工作空间, 初始化 && 爬取所有ROS包mkdir ~/ros_catkin_wscd ~/ros_catkin_wswstool init -j4 src kinetic-desktop-wet.rosinstall3. 编译工作空间sudo ./src/catkin/bin/catkin_make_isolated --install -DBOOST_ROOT=/usr/local/boost1580 -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic -j4"建议: 安装ROS, 请安装R0S-Melodic版本,这样底层库boost应该是满足条件,而不会引起冲突, 归根究底是因为RasBian Bluster是最新版,里面一些底层库都是比较新的版本(如boost-1.67.0, qt-5.11等)"
  • 问题1: 缺少empy
解决:  sudo apt install python-empy.
  • 问题2: 缺少console_bridge
Could not find a package configuration file provided by "console_bridge"
with any of the following names:console_bridgeConfig.cmakeconsole_bridge-config.cmake解决: sudo apt install librosconsole-bridge-dev
  • 问题3: 缺少Poco
CMake Error at /opt/ros/kinetic/share/cmake_modules/cmake/Modules/FindPoco.cmake:189 (MESSAGE):Poco was not found.  Set the Poco_INCLUDE_DIR cmake cache entry to thetop-level directory containing the poco include directories.  E.g/usr/local/include/ or c:\poco\include\poco-1.3.2解决: sudo apt-get install libpoco-doc libpoco-dev
  • 问题4: 缺少SIP
File "/home/pi/ros_catkin_ws/src/orocos_kinematics_dynamics/python_orocos_kdl/cmake/FindSIP.py", line 8, in <module>import sipconfig
ImportError: No module named sipconfig
CMake Error at cmake/FindSIP.cmake:63 (MESSAGE):Could not find SIP解决: sudo apt install python-sip python-sip-dev python-sip-doc python-sip-dbg
  • 问题5: 缺少TinyXML
CMake Error at /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137 (message):Could NOT find TinyXML (missing: TinyXML_LIBRARY TinyXML_INCLUDE_DIR)解决: sudo apt install libtinyxml-dev libtinyxml-doc
  • 问题6: boost底层库版本不对
fatal error: boost/tr1/unordered_set.hpp: No such file or directory解决: ros-kinetic要求boost为1.58版本,而系统为1.67,需要手动安装boost_1_58_0.wget -O boost_1_58_0.tar.bz2 http://sourceforge.net/projects/boost/files/boost/1.58.0/boost_1_58_0.tar.bz2
tar --bzip2 -xvf boost_1_58_0.tar.bz2安装boost有些依赖需要安装: sudo apt-get install libboost-all-dev libbz2-devcd boost_1_58_0
./bootstrap.sh --with-libraries=all --with-toolset=gcc
sudo ./b2 install --prefix=/usr/local/boost1580安装成功之后,重新编译ros包如下:
sudo ./src/catkin/bin/catkin_make_isolated --install --DBOOST_ROOT=/usr/local/boost1580 -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic -j4"CMakeLists.txt中指定Boost库的搜索路径: set(BOOST_ROOT /usr/local/boost)"
  • 问题7: tinyxml2缺失
CMake Error at /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137 (message):Could NOT find TinyXML2 (missing: TinyXML2_LIBRARY TinyXML2_INCLUDE_DIR)
Call Stack (most recent call first):sudo apt install libtinyxml2-dev
  • 问题8: PyQt5有问题
ImportError: No module named PyQt5解决:
> sudo apt install python-pyqt5*(pyqt-5.11.0), 不能这么安装,会导致与pyqt5.sip找不到,不知道是不是版本问题;源码安装:  下载链接: https://riverbankcomputing.com/software/pyqt/download5tar -xvf PyQt5_gpl-5.10.tar.gz
python configure.pymake -j4
> 这里会遇到错误: error: ‘waitForEvents’ is not a member of ‘QTest’, 这个函数自从5.10 / 5.11版本之后,去掉了。所以这里找不到,简单的办法就是按照提示找到调用该函数的地方,将其注释掉。
> 这个函数不重要,只有一个地方调用了,所以直接注释掉就OK了。
sudo make install
  • 问题9: 缺少gtest
解决: sudo apt-get install libgtest-dev
  • 问题10: 缺少lz4
CMake Error at CMakeLists.txt:13 (message):lz4 includes not found解决: sudo apt install liblz4-dev
  • 问题11: ‘logError’ was not declared in this scope" (cpp_common)
解决: 在logError前面添加CONSOLE_BRIDGE_, 即为CONSOLE_BRIDGE_logError, 后面类似的错误都可以用这种方法解决。
  • 问题12: “urdfdom_headers”, but CMake did not find one.
sudo apt install liburdffdom-headers-dev
sudo apt install liburdfdom-dev
  • 问题13: No package ‘assimp’ found
sudo apt install python-pyassimp libassimp-dev
  • 问题14: 缺少collada_dom
CMake Error at CMakeLists.txt:15 (find_package):By not providing "FindCOLLADA_DOM.cmake" in CMAKE_MODULE_PATH this projecthas asked CMake to find a package configuration file provided by"COLLADA_DOM"
解决:  sudo apt install libcollada-dom2.4-dp-dev
  • 问题15: No package ‘OGRE’, ‘OGRE-Overlay’ found:
解决: sudo apt-get install libogre-1.8-dev sudo apt install libyaml-cpp0.3-dev
sudo apt install python-netifaces python-defusedxml ---> "roscore缺少模块组件"
  • 问题16: 在树莓派4B上配置navigation包
1. sudo apt-get install libbullet-dev   ---> "Bullet"
2. sudo apt install libsdl-image1.2-dev libsdl2-dev  ---> "SDL"
3. 缺少diagnostic_updater: 按照源码编译ROS的方式,将其编译至系统库中;下载链接: git clone https://github.com/ros/diagnostics.git4. 缺少tf2_geometry_msgs: 同上下载链接: git clone https://github.com/ros/geometry2.git5. sudo apt install liborocos-bfl-dev --> "orocos-bfl"6. 安装pcl, 下载pcl-pcl-1.7.2;(pcl1.7版本依赖libvtk5版本的一个函数接口,而在vtk6/vtk7中已经取消了, 因此,这里选择pcl1.8.0+vtk7进行安装,但要选择boost1.58.0版本)安装依赖: sudo apt install libflann1.9 libflann-dev(1.9的版本太高,对与pcl-1.8需要安装flann-1.8)"apt-get安装方式: "  sudo apt install libpcl-dev(但这样安装得到的好像是最新版pcl1.9??)"建议: 安装ROS, 请安装R0S-Melodic版本,这样底层库boost应该是满足条件,而不会引起冲突, 归根究底是因为RasBian Bluster是最新版,里面一些底层库都是比较新的版本(如boost-1.67.0, qt-5.11等)" "源码编译选项(内存有限,去掉例子): cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_apps=OFF -DBUILD_examples=OFF .."7. 安装move_base_msg, pcl_msg --> For navigation.git clone https://github.com/ros-planning/navigation_msgs.gitgit clone https://github.com/ros-perception/pcl_msgs.git

史上最全源码安装ROS-BUG解决集合:在树莓派4B上安装Raspbian Bluster + ROS-kinetic + 配置navigation相关推荐

  1. Android上百实例源码分析以及开源分析集合打包

    感谢网友banketree的收集,压缩包的内容如下: 1.360新版特性界面源代码 实现了360新版特性界面的效果,主要涉及到Qt的一些事件处理与自定义控件.但源码好像是c++. 2.aidl跨进程调 ...

  2. Android+上百实例源码分析以及开源分析+集合打包

    1.360新版特性界面源代码 实现了360新版特性界面的效果,主要涉及到Qt的一些事件处理与自定义控件.但源码好像是c++. 2.aidl跨进程调用 服务端onBind暴露,然后客户端bindServ ...

  3. 一个即将写入MySQL源码的官方bug解决之路

    作者:周信静,毕业于浙江大学,目前在CDB/CynosDB数据库内核团队参与TXSQL云数据库内核研发工作,参与了热点行更新以及一系列性能优化工作,并修复了多个MySQL官方bug. 1背景 Inno ...

  4. Linux上全源码安装Apache、MySQL、PHP、WSF安装(转载)

    Linux上全源码安装Apache.MySQL.PHP.WSF安装 博客分类: PHP PHPMySQLApacheLinuxSQLite Linux上全源码安装Apache.MySQL.PHP.WS ...

  5. kubeadm源码分析(内含kubernetes离线包,三步安装)

    k8s离线安装包 三步安装,简单到难以置信 kubeadm源码分析 说句实在话,kubeadm的代码写的真心一般,质量不是很高. 几个关键点来先说一下kubeadm干的几个核心的事: kubeadm ...

  6. 小程序源码:全新实用工具证件照制作-多玩法安装简单

    这是一款证件照制作的微信小程序,里面也支持直接微信公众号版本生成安装 支持多种尺寸制作 支持相册上传于直接相机拍摄 支持多种类型的证件制作如,职业证件,公务员证件,身份证等各种类型 支持电子照存档等等 ...

  7. 分享66个ASP上传下载源码,总有一款适合您

    分享66个ASP上传下载源码,总有一款适合您 66个ASP上传下载源码下载链接:https://pan.baidu.com/s/1AAZA99BVNOFtVFIjnYl4XA?pwd=vyqa  提取 ...

  8. [附源码]计算机毕业设计Python+uniapp基于安卓的掌上校园系统7m7o8(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于安卓的掌上校园系统7m7o8(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: ...

  9. 小程序源码:好玩的表情包机器人-多玩法安装简单

    这是一款和表情包有关的一款机器人小程序 界面就相当于是聊天界面,然后是你和AI的界面 打开小程序后会自动全网推送几个表情包给你 然后你可以点击下方的说你还要然后又会随机发给你 当然你也可以输入关键词然 ...

  10. 小程序源码:万圣节头像框生成工具-多玩法安装简单

    大家好万圣节马上就要来了 那么临近了万圣节那么也给大家带来了一款与万圣节相关的程序 那么这款程序呢就是可以制作生成与万圣节相关的头像框 内含多种模板风格可供选择 支持用户上传模式和自动获取微信头像模式 ...

最新文章

  1. Coursera Machine Learning 作业提交问题
  2. Maven-环境配置
  3. 【编译原理】让我们来构建一个简单的解释器(Let’s Build A Simple Interpreter. Part 3.)(python/c/c++版)(笔记)
  4. (二)线程同步_3---在类中使用相互独立的属性同步
  5. 改变窗口背景_办公软件操作技巧063:如何设置ppt母版背景
  6. 用ajax连接mysql_页面用ajax实现简单的连接数据库
  7. 2017双11技术揭秘—阿里数据库计算存储分离与离在线混布
  8. 一看就懂的例子告诉你用react-redux的正确姿势
  9. Jquery实现无限级树状结构并动态添加增删改等编辑功能
  10. nginx反向代理模块配置详解_Nginx服务器的反向代理proxy_pass配置方法讲解
  11. [Bootstrap-Table] 中的事件用例
  12. h5页面如何切图_切图与CSS入门
  13. 最大流的四种常用算法
  14. 【源码之下无秘密】ArrayList:在内存只有10M的空间中申请一块5M的数组空间,会导致OOM吗?
  15. Java集合与泛型学习笔记
  16. 03-做一个通读Vue源码的计划吧
  17. Wap开发技术问题大全
  18. 51单片机的超声波测距系统【proteus仿真+程序+报告+原理图】
  19. 注意!这些设备禁止使用!物联卡网速慢、没信号的朋友请自行排查!
  20. 用模式识别实现围棋转接器的开源Java项目——一个类似GTool2.exe的工具

热门文章

  1. 计算机已从异常关机中恢复,win7系统经常遇到“windows已从异常关机中恢复”的解决方法...
  2. 目标客户画像_做营销时,如何做好目标用户群体画像?
  3. java计算机毕业设计网上鲜花交易平台源代码+数据库+系统+lw文档
  4. Python编程:字典
  5. unity检测范围内敌人_怎样获取离自己距离最近的敌人
  6. DNS 的工作原理——域名系统
  7. 智能DNS解析搭建成功
  8. QT项目--简易音乐播放器
  9. urllib爬虫封装(可设置代理,记录日志)方法
  10. 阿里云开启关闭防火墙