Hi,
I have a problem building your packages due to error with mavlink_sitl_gazebo. The output, when executing catkin build is as below.
Errors << mavlink_sitl_gazebo:make /home/hf/src/auav_2022_ws/logs/mavlink_sitl_gazebo/build.make.003.log
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/mavlink_interface.cpp: In member function ‘void MavlinkInterface::SendSensorMessages(uint64_t, HILData&)’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/mavlink_interface.cpp:208:14: error: ‘mavlink_hil_sensor_t’ {aka ‘struct __mavlink_hil_sensor_t’} has no member named ‘id’
208 | sensor_msg.id = data->id;
| ^~
make[2]: *** [CMakeFiles/gazebo_mavlink_interface.dir/build.make:76: CMakeFiles/gazebo_mavlink_interface.dir/src/mavlink_interface.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp: In member function ‘void gazebo::GimbalControllerPlugin::SendGimbalDeviceInformation()’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:657:5: error: invalid conversion from ‘const char*’ to ‘const uint8_t*’ {aka ‘const unsigned char*’} [-fpermissive]
657 | "PX4",
| ^~~~~
| |
| const char*
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:658:5: error: invalid conversion from ‘const char*’ to ‘const uint8_t*’ {aka ‘const unsigned char*’} [-fpermissive]
658 | "Gazebo SITL",
| ^~~~~~~~~~~~~
| |
| const char*
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:659:5: error: invalid conversion from ‘const char*’ to ‘uint32_t’ {aka ‘unsigned int’} [-fpermissive]
659 | "", // custom_name
| ^~
| |
| const char*
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:670:11: error: too many arguments to function ‘uint16_t mavlink_msg_gimbal_device_information_pack_chan(uint8_t, uint8_t, uint8_t, mavlink_message_t*, uint32_t, const uint8_t*, const uint8_t*, uint32_t, uint16_t, float, float, float, float, float, float)’
670 | yawMax);
| ^
In file included from /usr/local/include/mavlink/v2.0/common/common.h:2332,
from /usr/local/include/mavlink/v2.0/common/mavlink.h:32,
from /home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/include/gazebo_gimbal_controller_plugin.hh:39,
from /home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:21:
/usr/local/include/mavlink/v2.0/common/mavlink_msg_gimbal_device_information.h:144:24: note: declared here
144 | static inline uint16_t mavlink_msg_gimbal_device_information_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp: In member function ‘void gazebo::GimbalControllerPlugin::SendGimbalDeviceAttitudeStatus()’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:705:5: error: invalid conversion from ‘uint32_t’ {aka ‘unsigned int’} to ‘const float*’ [-fpermissive]
705 | timeMs,
| ^~~~~~
| |
| uint32_t {aka unsigned int}
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:707:5: error: cannot convert ‘const float*’ to ‘float’
707 | qArr,
| ^~~~
| |
| const float*
In file included from /usr/local/include/mavlink/v2.0/common/common.h:2334,
from /usr/local/include/mavlink/v2.0/common/mavlink.h:32,
from /home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/include/gazebo_gimbal_controller_plugin.hh:39,
from /home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_gimbal_controller_plugin.cpp:21:
/usr/local/include/mavlink/v2.0/common/mavlink_msg_gimbal_device_attitude_status.h:117:119: note: initializing argument 9 of ‘uint16_t mavlink_msg_gimbal_device_attitude_status_pack_chan(uint8_t, uint8_t, uint8_t, mavlink_message_t*, uint32_t, uint16_t, const float*, float, float, float, uint32_t)’
117 | uint32_t time_boot_ms,uint16_t flags,const float *q,float angular_velocity_x,float angular_velocity_y,float angular_velocity_z,uint32_t failure_flags)
| ~~~~~~^~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/gazebo_gimbal_controller_plugin.dir/build.make:63: CMakeFiles/gazebo_gimbal_controller_plugin.dir/src/gazebo_gimbal_controller_plugin.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1510: CMakeFiles/gazebo_gimbal_controller_plugin.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_mavlink_interface.cpp: In member function ‘void gazebo::GazeboMavlinkInterface::LidarCallback(gazebo::LidarPtr&, const int&)’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_mavlink_interface.cpp:824:14: error: ‘mavlink_distance_sensor_t’ {aka ‘struct __mavlink_distance_sensor_t’} has no member named ‘signal_quality’
824 | sensor_msg.signal_quality = lidar_message->signal_quality();
| ^~~~~~~~~~~~~~
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_mavlink_interface.cpp: In member function ‘void gazebo::GazeboMavlinkInterface::SonarCallback(gazebo::SonarPtr&, const int&)’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_mavlink_interface.cpp:896:14: error: ‘mavlink_distance_sensor_t’ {aka ‘struct __mavlink_distance_sensor_t’} has no member named ‘signal_quality’
896 | sensor_msg.signal_quality = sonar_message->signal_quality();
| ^~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/gazebo_mavlink_interface.dir/build.make:63: CMakeFiles/gazebo_mavlink_interface.dir/src/gazebo_mavlink_interface.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1630: CMakeFiles/gazebo_mavlink_interface.dir/all] Error 2
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_camera_manager_plugin.cpp: In member function ‘void gazebo::CameraManagerPlugin::_handle_storage_info(const mavlink_message_t*, sockaddr*)’:
/home/hf/src/auav_2022_ws/src/auav_2022_sample/catkin_purt/mavlink_sitl_gazebo/src/gazebo_camera_manager_plugin.cpp:777:9: error: ‘STORAGE_TYPE_OTHER’ was not declared in this scope; did you mean ‘AIS_TYPE_OTHER’?
777 | STORAGE_TYPE_OTHER, // storage type
| ^~~~~~~~~~~~~~~~~~
| AIS_TYPE_OTHER
make[2]: *** [CMakeFiles/gazebo_camera_manager_plugin.dir/build.make:63: CMakeFiles/gazebo_camera_manager_plugin.dir/src/gazebo_camera_manager_plugin.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:843: CMakeFiles/gazebo_camera_manager_plugin.dir/all] Error 2
make: *** [Makefile:163: all] Error 2
System: Ubuntu 20.04 with ROS noetic
In process of trying to build the workspace, I got errors that were related to missing packages. Also, I saw that you added a new install script recently, but it does not resolve the problem completely. So, I probably miss some dependencies, and if that is the case I would be glad to have a script, which would install all of them.
Looking forward to directions.
Best Regards,
Kuba