Wie man ROS-Fatal-Fehler behebt: ros/console.h: No such file or directory
Problem
Sie versuchen, eine ROS-Bibliothek oder ein Projekt mit colcon build zu bauen, aber Sie sehen das folgende Fehlerprotokoll:
ros_console_error.txt
In file included from /home/user/message_logger/build/message_logger/include/message_logger/log/log_messages_backend_config.hpp:61,
from /home/user/message_logger/include/message_logger/log/log_messages_backend.hpp:46,
from /home/user/message_logger/include/message_logger/log/log_messages.hpp:44,
from /home/user/message_logger/include/message_logger/message_logger.hpp:43,
from /home/user/message_logger/src/demo.cpp:6:
/home/user/message_logger/include/message_logger/log/log_messages_ros.hpp:43:10: fatal error: ros/console.h: No such file or directory
43 | #include <ros/console.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [CMakeFiles/demo.dir/build.make:76: CMakeFiles/demo.dir/src/demo.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:185: CMakeFiles/demo.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake: *** [Makefile:146: all] Error 2Lösung
Derzeit ist das ros-console-Paket zum Zeitpunkt der Erstellung dieses Artikels nicht im offiziellen ROS2-apt-Repository verfügbar.
Daher empfehle ich Ihnen, das Repo zu klonen, es mit colcon zu bauen und dann source install/setup.bash auszuführen, bevor Sie Ihr Paket bauen.
build_rosconsole.sh
git clone https://github.com/ros/rosconsole
cd rosconsole
colcon build
source install/setup.bashDanach (in der gleichen Shell) bauen Sie Ihr anderes Paket erneut mit colcon build.
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow