fatal error: mav_msgs/Actuators.h: 没有那个文件或目录

编译ros_gz包的时候,ros_ign_bridge一直报错,最开始都已经放弃了,但是今天发现不得不跑,唉,一直报:fatal error: mav_msgs/Actuators.h: 没有那个文件或目录。
#include
^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
知道是因为这个头文件的问题,但是网上没怎么找到解决的办法啊

报错提示:

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第1张图片终于让我找到个帖子,说是可以下载mav_msgs:https://github.com/ethz-asl/mav_comm/
(非常感谢!!!迈向成功的第一步)

git clone https://github.com/ethz-asl/mav_comm.git

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第2张图片下载后发现只有Actuators.msg文件,没有.h文件,猜想应该是要编译生成

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第3张图片
但是之前都没有过自己编译.msg成.h的经验,有点不晓得如何编译,找了些.msg编译成.h的帖子,发现都没具体说,后来抱着试试看的心理输入了chatgpt…

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第4张图片fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第5张图片

感觉还真可以试试,于是将mav_msgs文件夹放入到src文件夹后,运行catkin_make,结果真的成功了(原来chatgpt真的不只会一本正经胡说八道,有时候给的建议真可以参考参考)

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第6张图片最后将整个mav_msgs文件移到相应头文件夹下就可以了,我的是/opt/ros/melodic/include/
移动命令:sudo cp -r mav_msgs /opt/ros/melodic/include

编译 ros_gz 成功

fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第7张图片

话说之前还有个iostream头文件报错,但是mav_msgs/Actuators.h解决后,其他报错也消失了。


今天在一台新电脑上重新跑这个代码,又出现了一个新错误,再记录一下

fatal error: gflags/gflags.h:没有那个文件或目录
fatal error: mav_msgs/Actuators.h: 没有那个文件或目录_第8张图片解决方法:sudo apt-get install libgflags-dev

你可能感兴趣的:(ROS,异常解决,机器人,ros,mav_msgs)