Loading... # Ubuntu 22.04 源码编译 ROS Noetic 环境指南 🚀 在 **Ubuntu 22.04** 上编译安装 **ROS Noetic**,可以让您在最新的系统上使用 ROS 的强大功能。以下是详细的步骤和说明。 --- ## 一、准备工作 🛠️ ### 1. 更新系统源 ```bash sudo apt update && sudo apt upgrade -y ``` **解释**: - `sudo apt update`:更新软件包列表。 - `sudo apt upgrade -y`:升级已安装的软件包。 --- ## 二、安装必要的依赖项 📦 ```bash sudo apt install -y build-essential cmake git sudo apt install -y python3-rosdep python3-rosinstall-generator python3-vcstool sudo apt install -y python3-rosinstall ``` **解释**: - `build-essential`:编译工具集。 - `cmake`:构建系统。 - `git`:版本控制工具。 - `python3-rosdep`:依赖管理工具。 - `python3-rosinstall-generator`:生成 ROS 安装文件。 - `python3-vcstool`:多仓库管理工具。 - `python3-rosinstall`:ROS 安装管理工具。 --- ## 三、初始化 rosdep 🔧 ```bash sudo rosdep init rosdep update ``` **解释**: - `sudo rosdep init`:初始化 rosdep 数据库(只需执行一次)。 - `rosdep update`:更新依赖数据库。 --- ## 四、创建工作空间 🗂️ ```bash mkdir -p ~/ros_noetic_ws/src cd ~/ros_noetic_ws ``` **解释**: - `mkdir -p ~/ros_noetic_ws/src`:创建 ROS 工作空间及源代码目录。 - `cd ~/ros_noetic_ws`:进入工作空间目录。 --- ## 五、获取 ROS Noetic 源代码 📥 ```bash rosinstall_generator noetic desktop --rosdistro noetic --deps --tar > noetic-desktop.rosinstall ``` **解释**: - `rosinstall_generator`:生成需要安装的 ROS 包列表。 - `noetic desktop`:指定安装 ROS Noetic 的桌面完整版。 - `--deps`:包括所有依赖项。 - `--tar`:使用 tarball 源代码。 --- ## 六、下载源码并更新依赖 🌐 ### 1. 下载源码 ```bash vcs import src < noetic-desktop.rosinstall ``` **解释**: - `vcs import src`:根据生成的 `.rosinstall` 文件下载所有源码到 `src` 目录。 ### 2. 安装依赖项 ```bash rosdep install --from-paths src --ignore-src --rosdistro noetic -y ``` **解释**: - `rosdep install`:安装源码所需的所有系统依赖。 - `--from-paths src`:从 `src` 目录解析依赖。 - `--ignore-src`:忽略源代码中的包,仅安装系统依赖。 - `--rosdistro noetic`:指定 ROS 发行版为 Noetic。 --- ## 七、修复 Python 版本兼容性 🐍 由于 Ubuntu 22.04 使用 **Python 3.10**,而 ROS Noetic 默认使用 **Python 3.8**,需要进行一些调整。 ### 1. 安装 Python 3.8 ```bash sudo apt install -y python3.8 python3.8-dev ``` **解释**: - `python3.8`:安装 Python 3.8 解释器。 - `python3.8-dev`:安装 Python 3.8 开发头文件。 ### 2. 创建符号链接 ```bash sudo ln -s /usr/bin/python3.8 /usr/bin/python3 ``` **解释**: - 将默认的 `python3` 指向 `python3.8`。 **⚠️ 注意**:此操作可能影响系统其他依赖 Python 的程序,请谨慎操作。 --- ## 八、编译源码 🔨 ```bash colcon build --symlink-install ``` **解释**: - `colcon build`:使用 `colcon` 构建工具编译源码。 - `--symlink-install`:使用符号链接,便于开发调试。 --- ## 九、设置环境变量 🌱 ```bash source install/setup.bash ``` **解释**: - 加载刚刚编译好的 ROS 环境。 为了每次打开终端自动加载环境,可以将上述命令添加到 `~/.bashrc` 文件中。 ```bash echo "source ~/ros_noetic_ws/install/setup.bash" >> ~/.bashrc ``` --- ## 十、验证安装是否成功 ✅ ### 1. 检查 ROS 版本 ```bash rosversion -d ``` **解释**: - `rosversion -d`:显示已安装的 ROS 发行版名称。 **期望输出**:`noetic` ### 2. 运行示例节点 ```bash roscore ``` **解释**: - 启动 ROS 主节点,验证核心功能是否正常运行。 --- ## 十一、流程图 📊 ```mermaid flowchart TD A[开始] --> B[更新系统] B --> C[安装依赖项] C --> D[初始化rosdep] D --> E[创建工作空间] E --> F[获取源码] F --> G[安装依赖] G --> H[修复Python兼容性] H --> I[编译源码] I --> J[设置环境变量] J --> K[验证安装] K --> L[结束] ``` --- ## 十二、重要提示 ⚠️ - **<font color="red">谨慎修改 Python 默认版本</font>**:更改系统的 Python 版本可能导致其他程序异常,建议使用虚拟环境或容器。 - **<font color="red">依赖项可能有变动</font>**:由于 Ubuntu 22.04 并非 ROS Noetic 官方支持的系统,某些依赖可能需要手动调整。 - **<font color="red">备份重要数据</font>**:在进行系统级别的更改前,确保已备份重要数据。 --- ## 十三、总结 🎯 通过以上步骤,您已经在 **Ubuntu 22.04** 上成功从源码编译并安装了 **ROS Noetic**。这为在最新的 Ubuntu 版本上开发 ROS 应用程序铺平了道路。 希望本指南对您有所帮助,祝您在 ROS 的世界中探索愉快!🚀 --- 最后修改:2024 年 11 月 28 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏