参考:
https://zhuanlan.zhihu.com/p/702727186
前言:
笔记本安装了ubuntu20.04安装ros一直失败,于是将系统升级为ununut22.04,然后安装ros,根据上面的教程,目前看来是有可能成功的。
系统升级为ununut22.04,pcl可以打开pcd文件,未受影响。
安装humble:
设置编码
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
添加密钥
# 安装下载软件源和密钥的指令
sudo apt update && sudo apt install curl -y
# 设置下载软件源的密钥
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
添加apt源
千万注意,如果你是arm64架构,国内源路径中/ubuntu/,务必改成/ubuntu-ports/,一般大家都默认是x86架构
清华源、阿里源都可以
sudo gedit /etc/apt/sources.list
把下面代码拷贝到sources.list中
deb https://mirrors.aliyun.com/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ jammy main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ jammy-security main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ jammy-updates main restricted universe multiverse# deb https://mirrors.aliyun.com/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ jammy-proposed main restricted universe multiversedeb https://mirrors.aliyun.com/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ jammy-backports main restricted universe multiverse
安装humble-desktop
sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop
环境变量
source /opt/ros/humble/setup.bash
echo "source /opt/ros/humble/setup.bash">>~/.bashrc
后记
实际上到这一步完成,就可以打开小乌龟移动了。下面的也没搞明白干啥的。安装起来非常慢。也跟着做了。
安装ROS2包
sudo apt update
# 下面这个命令意思是,所有humble包全部安装,大概4GB,我在网络环境一般的情况下,安装了10个小时(网络真的很一般)
sudo apt install ros-humble-****
小海龟测试
打开一个terminal,输入:ros2 run turtlesim turtlesim_node
再打开一个terminal,输入:ros2 run turtlesim turtle_teleop_key