Comment corriger l'erreur fatale ROS : ros/console.h : No such file or directory
Problème
Vous essayez d’exécuter colcon build sur une bibliothèque ou un projet ROS mais vous voyez le journal d’erreur suivant :
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 2Solution
Actuellement, le paquet ros-console n’est pas disponible dans le dépôt apt officiel ROS2 au moment de la rédaction de cet article.
Par conséquent, je vous recommande de cloner le dépôt, de le compiler en utilisant colcon puis d’exécuter source install/setup.bash avant de compiler votre paquet.
build_rosconsole.sh
git clone https://github.com/ros/rosconsole
cd rosconsole
colcon build
source install/setup.bashAprès cela (dans le même shell), compilez à nouveau votre autre paquet en utilisant 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