源码安装ROS Melodic Python3 指南 (转)

这篇文章转自   https://blog.csdn.net/id9502/article/details/80410989 

简直就是ros源码阅读顺序表

1. 首先安装基本依赖包:

安装ros依赖:

sudo apt install python3-rosdep2 python3-rosinstall-generator python3-rosinstall build-essential python3-defusedxml python3-netifaces

安装编译依赖:

sudo apt install libeigen3-dev libboost-thread-dev libgtest-dev libconsole-bridge-dev libpoco-dev python3-sip-dev libboost-filesystem-dev libboost-program-options-dev libtinyxml2-dev libtinyxml-dev pyqt5-dev libcurl4-openssl-dev libboost-regex-dev liblz4-dev libbz2-dev libboost-singals-dev liburdfdom-headers-dev liburdfdom-dev uuid-dev libassimp-dev libogre-1.9-dev libyaml-cpp-dev

2. 配置rosdep

mkdir setups
cd setups
touch rosdep
chmod +x ./rosdep

添加脚本内容:

#!/usr/bin/env python3

from rosdep2.main import rosdep_main
rosdep_main()

执行

sudo ./rosdep init
./rosdep update

3. 获取基本ros环境的源码

首先下载执行文件

wget https://raw.githubusercontent.com/ros-infrastructure/rosinstall_generator/master/bin/rosinstall_generator
wget https://raw.githubusercontent.com/vcstools/wstool/master/scripts/wstool
wget https://raw.githubusercontent.com/ros-infrastructure/rospkg/master/scripts/rosversion
wget https://raw.githubusercontent.com/ros-infrastructure/catkin_pkg/master/bin/catkin_find_pkg
wget https://raw.githubusercontent.com/ros-infrastructure/catkin_pkg/master/bin/catkin_create_pkg
wget https://raw.githubusercontent.com/ros-infrastructure/catkin_pkg/master/bin/catkin_generate_changelog
wget https://raw.githubusercontent.com/ros-infrastructure/catkin_pkg/master/bin/catkin_tag_changelog
wget https://raw.githubusercontent.com/ros-infrastructure/catkin_pkg/master/bin/catkin_test_changelog
chmod +x ./rosinstall_generator
chmod +x ./wstool
chmod +x ./rosversion
chmod +x ./catkin_find_pkg
chmod +x ./catkin_create_pkg
chmod +x ./catkin_generate_changelog
chmod +x ./catkin_tag_changelog
chmod +x ./catkin_test_changelog

记得修改第一行引用的python 为python3,并把下面的from _future_ import 行删除

新建总工程目录并执行ros源代码下载

mkdir ../workspace
cd ../workspace
../setups/rosinstall_generator desktop_full --rosdistro melodic --deps --tar > melodic-desktop-full.rosinstall
../setups/wstool init -j8 src melodic-desktop-full.rosinstall

如果安装失败的话,可以试试继续安装:

../setups/wstool update -j 8 -t src

接下来解决依赖

../setups/rosdep install --from-paths src --ignore-src --rosdistro melodic -y

4. 安装Catkin

Github Catkin上下载源码,cmake并选择python版本为3,安装地址选为自己的环境文件夹env

export ROS_PYTHON_VERSION=3
mkdir build
cd build
cmake ..
make DESTDIR=xxxxxxx
make install

然后回到workspace目录 
修改 ./src/orocos_kinematics_dynamics/python_orocos_kdl/CMakeLists.txt 中

SET(PYTHON_VERSION 2 CACHE STRING "Python Version")

改为

SET(PYTHON_VERSION 3 CACHE STRING "Python Version")

修改 src/dynamic_reconfigure/cfg/Test.cfg 和 src/nodelet_core/nodelet_topic_tools/cfg/NodeletThrottle.cfg 第一行为

#! /usr/bin/env python3

添加 regex 依赖到 src/ros_comm/rosconsole/CMakeLists.txt 72 行后(维持其他不变,添加boost_regex)

target_link_libraries(rosconsole ${rosconsole_backend_LIBRARIES} ${catkin_LIBRARIES} ${Boost_LIBRARIES} boost_regex)

修改 src/vision_opencv/cv_bridge/CMakeLists.txt 11 行为

find_package(Boost REQUIRED python-py36)

../env/setup.sh 最后一行添加

export ROS_PYTHON_VERSION=3

5. 开始编译

source ../env/setup.zsh
catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
mv ../setups/* ../env/bin/

如果想更换安装地点的话,可以在最后catkin之后加 –install-space xxxxxxx

6. 开始使用ROS

以后任何新Term执行ROS命令前都要载入配置环境(也可以加入~/.bashrc或者~/.zshrc里面自动执行)

source ../env/setup.zsh

启动 ros 调度核心

roscore

开新窗口启动 rviz 来测试

rosrun rviz rviz

若能成功启动,万事大吉!

备注:rqt 系列的 ros 程序似乎没有自动修改第一行为 python3, 需要手动修改。

1’. 懒人福利

简单编译后打包好的 deb 文件(不对安装结果负责,因为依赖太多了数不清,所以如果有不能运行的按照log添加添加吧,另外欢迎随意修正这个 deb),如果你和我一样用的 debian testing 系统,欢迎直接 copy 我编译完的二进制包:https://pan.baidu.com/s/1WmZAA7J-2uvSz8S9-XmdWQ

原文地址:https://www.cnblogs.com/shepherd2015/p/11257356.html

时间: 2024-11-16 03:18:27

源码安装ROS Melodic Python3 指南 (转)的相关文章

在CentOs服务器上源码安装python3.5

在CentOs服务器上源码安装python3.5 作者:尹正杰 1.系统环境介绍 2.安装依赖包 [[email protected] packages]# yum -y groupinstall "Development tools" [[email protected] packages]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk

CentOS6.5源码安装python3.5.2

前提: 1.实现自动补全需要安装模块 readline-devel (yum install -y readline-devel) 2.实现支持SSL协议需安装模块 openssl-devel (yum install -y openssl-devel) 安装步骤 1.下载python3.5源码包到/usr/local/src/ (https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz) 2. tar xf Python-3.5.2.tg

源码安装python3

****大家好,我是霸王卸甲,很长时间没更新博客了,今天给大家带来的是centos python3的源码安装教程!!!!! python官网:https://www.python.org/ 下载python3的包 装好yum源和epel源 解压安装 [[email protected] a]# lsPython-3.6.0.tgz[[email protected] a]# tar -xf Python-3.6.0.tgz -C /usr/local/src/[[email protected]

ubuntu16.04 源码安装Python3.7 并在此基础上安装Tensorflow (确保Tensorflow计算框架与系统的彻底隔离)

Python3.7 源码下载: https://www.python.org/downloads/release/python-370/ 解压源码: tar -zxvf Python-3.7.0.tgz -C ~ 原文地址:https://www.cnblogs.com/devilmaycry812839668/p/9274547.html

CentOS 7下源码安装MySQL 5.7

网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度快,安装步骤简单,缺点是安装包很大,300M左右(5.7版本的是600M左右), 对于第二种方法,我搞了一天,无果,到某个环节实在是无法走通,老大那边也不让搞了,隔了几天老大又吩咐我在生产服务器上安装mysql,这次我就按照第一种方法源码安装方式 下载源码安装包 http://dev.my

Day6.swap命令,进程管理,rmp软件包与yum软件包管理,源码安装

1) 开启Linux系统前添加一块大小为15G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大小为5G 4) 格式化主分区为ext3系统 5) 将逻辑分区设置为交换分区 6) 启用上一步的交换分区 7) 查看交换分区的状态 作业二:free命令查看内存 整理buffer与cache的作用:两者是用来解决硬盘和内存速度差的问题,实质上是内存上的空间,buffer是还没有写到硬盘里的数据,就是内存数

Python学习第六天----Linux内存管理、进程管理、RPM包安装管理及源码安装软件

Linux内存管理.进程管理.RPM包安装管理及源码安装软件 一.交换分区     交换分区其实就相当于Windows系统下的虚拟内存的概念,当物理内存不够用的时候,由操作系统将硬盘的一块区域划分出来作为内存使用.具体使用方法如下:      [[email protected] ~]# fdisk -l 磁盘 /dev/sdb:16.1 GB, 16106127360 字节,31457280 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):5

rpm命令,yum命令,源码安装python

一.rpm命令 挂载光盘文件到/media目录 进去/media目录下的Packages目录 查看系统已安装的所有rpm包 查看系统是否安装dhcp软件包 安装dhcp软件包 查看dhcp软件包的信息 查看dhcp软件包中所包含的所有文件 查看/bin/ls文件是由哪个软件包产生 卸载dhcp软件包   二.yum命令 自定义yum仓库:createrepo 自定义repo文件 使用yum命令安装httpd软件包   卸载httpd软件包:yum –y remove 软件名   使用yum安装组

LIUNX命令使用及源码安装

LIUNX命令使用及源码安装 作业一:LINUX下配置硬盘 开启Linux系统前添加一块大小为15G的SCSI硬盘     开启系统,右击桌面,打开终端 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大小为5G [[email protected] 桌面]# fdisk -l  查看磁盘列表 [[email protected] 桌面]# fdisk /dev/sdc   对新增加的磁盘进行分区,主盘5G 对新增加的磁盘进行分区,剩余空间给扩展分区 在