首页 > 系统相关 >ROS1基础开发环境配置记录(ubuntu20.04+ros-noetic+cartographer)

ROS1基础开发环境配置记录(ubuntu20.04+ros-noetic+cartographer)

时间:2024-11-10 18:17:30浏览次数:7  
标签:ubuntu20.04 noetic cartographer google catkin src ws ros

一、ROS-Noetic安装

1、选择安装源

官方默认安装源:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

国内清华的安装源

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

国内中科大的安装源

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

2、设置key

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

3、安装

sudo apt update
sudo apt install ros-noetic-desktop-full

4、配置环境变量

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

二、ROS工程创建

1、创建工作空间

mkdir -p 自定义空间名称/src
cd 自定义空间名称

2、进入 src 创建 ros 包并添加依赖

cd src
catkin_create_pkg 自定义ROS包名 roscpp rospy std_msgs

3、编译工程

catkin_make

三、cartographer安装

1、创建工作空间(建议直接在主目录下创建工作空间,不要把cartographer的工作空间和自己项目工程工作空间放在主目录下的同一个文件夹下,会导致在source ~/.bashrc时产生冲突,导致bashrc中的cartographer的source命令和项目工程的source命令无法同时起效,从而导致工程的运行失败)

mkdir -p ~/catkin_google_ws/src
cd catkin_google_ws/src
catkin_init_workspace

2、安装工具

sudo apt update
sudo apt install -y python3-wstool python3-rosdep ninja-build stow

3、初始化工作空间

3-1、设置/etc/hosts,可以解决网络问题导致的工作空间初始化失败
浏览器输入访问域名查询网址:https://site.ip138.com/
查询域名ip,搜索框中输入: raw.githubusercontent.com,复制其中出现的查询到的"泛播"IP到/etc/hosts中

在这里插入图片描述

sudo vim /etc/hosts

在这里插入图片描述

3-2、开始初始化工作空间
cd catkin_google_ws
wstool init src
#如果一次不成功,可以多试几次
wstool merge -t src https://raw.githubusercontent.com/cartographer-project/cartographer_ros/master/cartographer_ros.rosinstall
wstool update -t src

4、安装依赖并下载cartographer相关功能包

sudo pip install rosdepc
sudo rosdepc init
rosdepc update
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

补充:本篇文章使用的时ubuntu20.04,在此版本系统下rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y会出现如下错误,解决办法为删除catkin_google_ws/src/cartographer/package.xml中的<depend>libabsl-dev</depend>这一行,然后重新运行rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
cartographer: [libabsl-dev] defined as "not available" for OS version [focal]

5、安装abseil cpp库(在catkin_google_ws目录下运行下面命令)

src/cartographer/scripts/install_abseil.sh

6、编译

catkin_make_isolated --install --use-ninja

如果编译出现如下错误:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
GMOCK_LIBRARY
    linked by target "time_conversion_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "time_conversion_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "msg_conversion_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "msg_conversion_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "metrics_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "metrics_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "configuration_files_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros
    linked by target "configuration_files_test" in directory /home/pilot/catkin_google_ws/src/cartographer_ros/cartographer_ros

-- Configuring incomplete, errors occurred!
See also "/home/pilot/catkin_google_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/pilot/catkin_google_ws/build/CMakeFiles/CMakeError.log".
make: *** [Makefile:4520:cmake_check_build_system] 错误 1
Invoking "make cmake_check_build_system" failed

执行以下命令后,重新编译

sudo apt install libgmock-dev

7、添加source命令到~/.bashrc中

sudo vim ~/.bashrc
source ~/catkin_google_ws/devel_isolated/setup.bash添加到~/.bashrc文件末尾,然后保存,并在命令行中执行:
source ~/.bashrc

标签:ubuntu20.04,noetic,cartographer,google,catkin,src,ws,ros
From: https://blog.csdn.net/Heartbeat__/article/details/143664178

相关文章

  • 服务器是Ubuntu20.04,安装Colmap
    就下这一个东西,遇到的错误简直数不清,在这吐槽一下!顺便,分享一个最终成功的教程!!(虽然可能是玄学~)附上我跟着一步一步来最终下好的教程链接,亲测好用!!!https://blog.csdn.net/weixin_44172157/article/details/122203759其实中途还是发现了一个错误!和之前遇到的都一样,后面发现是我文件......
  • ubuntu20.04换国内源
    备份源文件sudocp/etc/apt/sources.list/etc/apt/sources.list.backup修改源文件sudonano/etc/apt/sources.list更新源sudoaptupdatesudoaptupgrade国内常用源阿里源debhttp://mirrors.aliyun.com/ubuntu/focalmainrestricteduniversemultiversedeb-s......
  • Ubuntu20.04挂载新硬盘
    一、硬盘分区|Harddiskaddnewpartition1、显示硬盘及所属分区情况。在终端窗口中输入如下命令:sudofdisk-l显示当前的硬盘及所属分区的情况。如下图所示:系统提示:DIsk/dev/sdbdoesn'tcontainavalidpartitiontable。2、对硬盘进行分区。在终端窗口中输入如下命令:s......
  • Ubuntu20.04版本安装pytorch(宝宝级攻略)
     前言在学习深度学习时,安装pytorch是必要的,现在想出一个宝宝级的攻略,希望能够帮助大家节约时间。如果大家通过我的攻略安装成功,请在评论区打出“好用“希望能够帮助到更多人。1.安装前的准备1.检查你的Ubuntu是否安装了显卡驱动程序Ubuntu20.04版本的NVIDIA显卡驱动程序......
  • ROS2在MyCobot320Pi2022和PC之间通讯(都是Ubuntu20.04系统)
    参考:RunningROSacrossmultiplemachineshttp://wiki.ros.org/ROS/Tutorials/MultipleMachinesSLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——4.PC端与robot端ROS网络通信https://www.cnblogs.com/hiram-zhang/p/10410168.html在多台PC上进行ROS通讯(在多台远程机器人......
  • 新安装的Ubuntu20.04 系统没有声音怎么办?
    问题描述:新安装的Ubuntu20.04系统没有声音怎么办?问题解答:第一步,下载pavucontrol音频播放工具。sudoaptinstallpavucontrol第二步、设置工具。首先在配置里面将HDANVidia设置为关闭。(我的ubuntu安装时候汉化了,所以软件也是汉语,有的人可能是英文的)。其次,将内置音频......
  • Ubuntu20.04 更新Nvidia驱动 + 安装CUDA12.1 + cudnn8.9.7
    一、概述    最近客户给了几台GPU服务器,长期放置落灰那种,然后想利用起来,所以上去看看了配置,系统是Ubuntu20.04,相关的驱动版本稍嫌老一些,所以需要更新Nvidia驱动,同时在安装CUDA和CUDNN,查看了显卡型号之后,打算使用onnxruntime进行推理,对比了版本,最后选择了CUDA12.1+CU......
  • wsl ubuntu20.04设置core文件生成路径
    1.首先要确定允许生成core文件#在终端执行下列命令,执行后仅本次会话有效,如需每次都生效,可以添加到~/.bashrc文件中ulimit-cunlimited2.查看core文件的生成目录cat/proc/sys/kernel/core_pattern3.临时设置core文件的生成目录#先切换到root用户,然后输入,其中./表示生......
  • SLAM Cartographer原理与应用
    原理论文地址:https://static.googleusercontent.com/media/research.google.com/zh-CN//pubs/archive/45466.pdf二维激光雷达同步定位与地图构建中的实时闭环检测(Real-TimeLoopClosurein2DLIDARSLAM)摘要本文介绍了便携式激光测距仪(LIDAR)和同时定位与地图构建(SLAM)技......
  • Ubuntu20.04环境下XTDrone三维运动规划:运行ego时报错“[FSM]:state:INIT no odom.”
       这篇文章以使用Gazebo位姿真值为例,如果使用视觉惯性里程计,解决的思路是一样的。       按照语雀官方文档启动egoplanner后,终端可能会报出如下图所示的"noodom"提示,飞机无法飞向给定目标点:    出现这个问题的原因是订阅的里程计话题名不对,我......