主播在运行roslaunch px4 outdoor3.launch时
出现以上红字报错:
[gazebo-2] process has died [pid 2370, exit code 127, cmd /home/xtdrone/catkin_ws/src/gazebo_ros_pkgs/gazebo_ros/scripts/gzserver -e ode /home/xtdrone/PX4_Firmware/Tools/sitl_gazebo/worlds/outdoor3.world __name:=gazebo __log:=/home/xtdrone/.ros/log/fe2fcee8-14dc-11f0-bfbf-d328f949d708/gazebo-2.log].
log file: /home/xtdrone/.ros/log/fe2fcee8-14dc-11f0-bfbf-d328f949d708/gazebo-2*.log
[gazebo_gui-3] process has died [pid 2375, exit code 127, cmd /home/xtdrone/catkin_ws/src/gazebo_ros_pkgs/gazebo_ros/scripts/gzclient __name:=gazebo_gui __log:=/home/xtdrone/.ros/log/fe2fcee8-14dc-11f0-bfbf-d328f949d708/gazebo_gui-3.log].
log file: /home/xtdrone/.ros/log/fe2fcee8-14dc-11f0-bfbf-d328f949d708/gazebo_gui-3*.log
能看见报错中含有gzserver和gzcilent文件,首先确保这两个文件确实在这个目录下 ,检查文件位置。
然后回看代码,发现红字报错上面两行才是报错信息:
主播这里是这个原因:不可以打开这两个路径下的setup.sh文件,然后顺着这个路径去确认文件是否在这个位置,我找到后发现在但是就是无法识别,那么就是环境变量的问题。
打开主目录下的隐藏文件./bashrc,看是否有setup.sh文件的路径指引
能看到这里的是source /opt/ros/noetic/setup.bash
source ~/catkin_ws/devel/setup.bash
文件格式并不相同,所以就是我们没有配置环境的问题
这里主播的文件位置是一样的,所以直接复制这两行把.bash改成.sh保存退出
然后记得刷新环境配置
source ~/.bashrc
然后再运行roslaunch即可打开。