ros:编译navigation

1 下载导航包

git clone https://github.com/ros-planning/navigation_experimental.git

2 processing catkin package: ‘map_server’ 缺少Could NOT find Bullet
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find Bullet (missing: BULLET_DYNAMICS_LIBRARY
BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY BULLET_SOFTBODY_LIBRARY
BULLET_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-2.8/Modules/FindBullet.cmake:76 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
navigation/map_server/CMakeLists.txt:11 (find_package)

解决办法:

sudo apt-get install libbullet-dev

3 cmake版本低——CMake Error at navigation/amcl/CMakeLists.txt:1 (cmake_minimum_required):
CMake 3.1 or higher is required. You are running version 2.8.12.2

解决办法:

<
### 编译 ROS 2 Foxy 中的 navigation2 包 为了在 ROS 2 Foxy 版本中编译 `navigation2` 功能包,需遵循一系列特定的操作来设置环境并处理依赖关系。 #### 设置工作空间 首先,在本地计算机上创建一个新的工作空间目录,并进入此目录: ```bash mkdir -p ~/nav2_ws/src cd ~/nav2_ws/ ``` #### 获取源码 克隆官方仓库中的 `navigation2` 到已建立的工作空间内。这一步骤确保获取最新版的功能包及其子模块: ```bash git clone -b foxy https://github.com/ros-planning/navigation2.git src/navigation2 cd src/navigation2 git submodule update --init --recursive ``` #### 解决依赖项 利用 `rosdep` 工具解决所有必要的软件包依赖问题。在此之前,初始化 rosdep 并更新其数据库;随后运行如下命令以解析项目所需的所有外部库和其他资源文件: ```bash sudo apt-get install python3-rosdep sudo rosdep init rosdep update rosdep install --from-paths src --ignore-src -r -y ``` #### 构建过程 通过 Colcon 进行构建之前要确认已经安装了它。之后可执行下面给出的指令完成整个项目的编译任务: ```bash colcon build --symlink-install source install/setup.bash ``` 上述命令会读取 CMakeLists.txt 文件以及其他配置信息,从而识别出所有的目标二进制文件、脚本以及 Python 模块等,并将其放置于合适的位置以便后续调用[^1]。 #### 验证安装成果 最后可以通过简单的测试案例验证是否成功部署了 `navigation2` 。例如加载默认参数集并启动基本导航栈实例化: ```bash ros2 launch nav2_bringup tb3_simulation_launch.py ``` 以上就是关于如何在 ROS 2 Foxy 上编译 `navigation2` 的全部内容介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值