Ubuntu20安装ROS2 foxy
1、检查UTF-8编码
locale
有以下输出就够了,zh(中)还是en(英)编码关系不大。
如果没有以上输出,就需要安装locale
sudo apt update && sudo apt install locales
然后再次查看locale
2、下载密钥
sudo apt install curl gnupg2 -y
curl -s https://gitee.com/ohhuo/rosdistro/raw/master/ros.asc | sudo apt-key add -
3、添加ROS软件源
echo "deb [arch=$(dpkg --print-architecture)] https://repo.huaweicloud.com/ros2/ubuntu/ $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
其中source /etc/os-release && echo $UBUNTU_CODENAME
意思就是先后执行这两条命令,而美元符就是再取它的值。有人可能会问为什么不用$(lsb_release -cs)
,因为$(lsb_release -cs)
这个指令是获取系统的发行版本号。那对于其他基于ubuntu的衍生linux系统,获取到的肯定就不会是bionic、focal等发行号。而我的那个命令就可以获取到这类衍生系统底层的ubuntu_codename。
4、更新软件源
sudo apt update
5安装桌面版本
sudo apt install ros-foxy-desktop
6、添加路径到系统环境变量
echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
7、运行自带的例程节点
ros2 run demo_nodes_cpp talker
成功后则说明安装成功
8、安装其他工具
1、自动补全工具
sudo apt install python3-argcomplete -y
2、calcon是ROS2 项目构建工具,熟悉ROS1里的catkin_make就懂了
sudo apt install python3-colcon-common-extensions
3、添加环境变量到shell
echo "source /usr/share/colcon_cd/function/colcon_cd.sh" >> ~/.bashrc
echo "export _colcon_cd_root=/opt/ros/foxy/" >> ~/.bashrc
echo "source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash" >> ~/.bashrc