在初次使用Turtlebot3仿真环境时,运行
ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py
出现报错
gazebo::rendering::Camera*]: 断言 "px != 0" 失败。
[ERROR] [gzclient-2]: process has died [pid 2741, exit code -6, cmd 'gzclient'].
这个错误表明在 gzclient 进程中出现了断言失败,并因此导致了进程崩溃。具体来说,这个错误与 Boost 库中的 shared_ptr 相关,断言 “px != 0” 表示在尝试访问一个空指针时失败了。
解决方案
使用命令
source /usr/share/gazebo/setup.sh
并把它加入.bashrc文件。
为什么
运行 source /usr/share/gazebo/setup.sh 会设置Gazebo所需的环境变量,使得Gazebo和相关工具能够正确运行。