darknet_ros编译错误CMake Error at /usr/share/cmake-3.5/Modules/FindCUDA.cmake:1649问题解决办法

在进行基于ROS的毕业设计时,使用darknet_ros进行目标识别,遇到CMake编译错误。错误源于文件缺失。解决方法包括删除原有项目文件夹,通过特定命令重新clone项目,然后执行catkin_make -DCMAKE_BUILD_TYPE=Release以成功编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在研究基于计算机视觉和深度学习的目标识别技术做毕业设计,用到了darknet在ROS操作系统中的版本darknet_ros,在ROS系统下使用YOLO算法进行目标识别。
在编译darknet_ros时报出一个很少见的错误,经过多方查找求证终于将问题解决,特此与大家分享,希望能帮助遇到同样问题的朋友。

执行代码:

catkin_make -DCMAKE_BUILD_TYPE=Release

报错(如图):

CMake Error at /usr/share/cmake-3.5/Modules/FindCUDA.cmake:1649 (add_library): 
  Cannot find source file:
    DARKNET_PATH-NOTFOUND/src/activation_layer.c

在这里插入图片描述
错误产生原因:

git clone https://github.com/leggedrobotics/darknet_ros.git

不知道为什么,这样clone的项目中会有文件缺失,导致报错。

错误解决办法:
1.删除已clone到电脑中的darknet_ros文件夹
2.在需要clone darknet_ros项目的文件夹中执行以下命令重新clone项目

git clone --recursive git@github.com:leggedrobotics/darknet_ros.git

在这里插入图片描述
此时再次执行catkin_make -DCMAKE_BUILD_TYPE=Release进行编译,即可正常完成编译!

当我执行catkin_make时,出现报错interface.c:9: /usr/include/opencv4/opencv2/core/cvdef.h:704:4: error: #error "OpenCV 4.x+ requires enabled C++11 support" 704 | # error "OpenCV 4.x+ requires enabled C++11 support" | ^~~~~ compilation terminated due to -Wfatal-errors. make[2]: *** [darknet_ros/darknet_ros/CMakeFiles/darknet_ros_lib.dir/build.make:76:darknet_ros/darknet_ros/CMakeFiles/darknet_ros_lib.dir/src/image_interface.c.o] 错误 1 make[2]: *** 正在等待未完成的任务.... /home/wjy/gensui_ws/src/darknet_ros/darknet_ros/src/YoloObjectDetector.cpp: In member function ‘darknet_ros::IplImageWithHeader_ darknet_ros::YoloObjectDetector::getIplImageWithHeader()’: /home/wjy/gensui_ws/src/darknet_ros/darknet_ros/src/YoloObjectDetector.cpp:516:49: error: no matching function for call to ‘_IplImage::_IplImage(cv::Mat&)’ 516 | IplImage* ROS_img = new IplImage(camImageCopy_); | ^ In file included from /usr/include/opencv4/opencv2/core/core_c.h:48, from /usr/include/opencv4/opencv2/imgproc/types_c.h:46, from /opt/ros/noetic/include/cv_bridge/cv_bridge.h:45, from /home/wjy/gensui_ws/src/darknet_ros/darknet_ros/include/darknet_ros/YoloObjectDetector.hpp:30, from /home/wjy/gensui_ws/src/darknet_ros/darknet_ros/src/YoloObjectDetector.cpp:10: /usr/include/opencv4/opencv2/core/types_c.h:327:1: note: candidate: ‘_IplImage::_IplImage()’ 327 | _IplImage | ^~~~~~~~~ /usr/include/opencv4/opencv2/core/types_c.h:327:1: note: candidate expects 0 arguments, 1 provided /usr/include/opencv4/opencv2/core/types_c.h:327:1: note: candidate: ‘constexpr _IplImage::_IplImage(const _IplImage&)’ /usr/include/opencv4/opencv2/core/types_c.h:327:1: note: no known conversion for argument 1 from ‘cv::Mat’ to ‘const _IplImage&’ /usr/include/opencv4/opencv2/core/types_c.h:327:1: note: candidate: ‘constexpr _IplImage::_IplImage(_IplImage&&)’ /usr/include/opencv4/opencv2/core/types_c.h:327:
03-20
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值