一、问题描述
ROS 编译package时出现报错
CMake Error at /home/***/test_ws/build/projectapplication_r2live/livox_ros_driver/livox_ros_driver/cmake/livox_ros_driver-genmsg.cmake:139 (add_custom_target):
add_custom_target cannot create target
"livox_ros_driver_generate_messages_lisp" because another target with the
same name already exists. The existing target is a custom target created
in source directory
"/home/***/test_ws/src/projectapplication_r2live/r2live/r2live". See
documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/kinetic/share/genmsg/cmake/genmsg-extras.cmake:307 (include)
projectapplication_r2live/livox_ros_driver/livox_ros_driver/CMakeLists.txt:46 (generate_messages)
二、出现原因
在 /home/***/test_ws/src/projectapplication_r2live/r2live/r2live 下的 CMakeLists.txt 中的find_package 标签 和 package.xml 中的 build_depend 标签不相同。
三、解决方法
CMakeLists.txt 中的find_package 标签中的所有项,要和 package.xml 中的 build_depend 标签改成完全相同的。
参考链接
[1] 流觞时光. ROS使用时的一些错误以及解决(一) [EB/OL]. https://blog.csdn.net/qq_38574198/article/details/90761170, 2019-06-03/2022-06-05.