如何在不使用Connext的情况下屏蔽ROS2中的Connext运行警告
ROS2终端Connext警告屏蔽方法
该警告是工作区构建阶段检测到了Connext DDS环境,但当前运行环境中没有对应的Connext安装包、也未配置NDDSHOME环境变量导致的,如果你完全不使用Connext,可以用以下任意一种方法解决:
- 方法一:修改
~/.bashrc跳过检测(无需重构工作区,推荐)
打开~/.bashrc文件,在所有source ROS2环境(包括系统ROS和自定义工作区的setup.bash)的命令之前,添加如下配置:
保存后执行export AMENT_IGNORE_CONNEXT=1source ~/.bashrc立即生效,后续新开终端不会再弹出该警告。 - 方法二:重建工作区时移除Connext支持
如果你是自行编译的ROS2工作区,构建时添加参数跳过Connext相关模块的编译即可:
构建完成后重新source工作区的setup.bash即可。colcon build --cmake-args -DCONNEXT_CMAKE_MODULE_IGNORE=ON - 方法三:临时过滤警告输出(应急使用)
不想修改配置的话,可以直接在source命令后过滤对应警告:source /opt/ros/${ROS_DISTRO}/setup.bash 2>&1 | grep -v "connext_cmake_module"
原警告翻译:
[connext_cmake_module] 警告:
构建工作区时检测到的Connext安装路径[[/opt/rti.com/rti_connext_dds-5.3.1]]不是有效目录,且未设置NDDSHOME环境变量,Connext相关功能将不可用。
内容的提问来源于stack exchange,提问作者Bilal
相关产品推荐
相关产品推荐

