下载AlexeyAB版本编译好的darknet也是 可以用,尝试用已写好的CMakeList.txt自己cmake一版出来。只要根据需要选中ENABLE_CUDA, ENABLE_OPENCV,如下图,cmake和生成工程的过程都很顺利。
因为我的cuda版本是9.2,最多支持的是sm_70,compute_70,如下图配置工程项目设备代码生成选项。
设置完编译,出现如下一堆好多的错误,全部报的是nvcc的代码。开始一直怀疑cmake出来工程的配置有问题,对照
AlexeyAB编译好的darknet版本的工程配置,改来改去都没法消除这些错误。最后只能硬着头皮仔细看输出错误信息,如下图,发现了好多行nvcc fatal:Unknows option 'openmp'输出。开始怀疑这些错误跟OpenMP有关。
查了查,说nvcc可以添加openmp扩展编译选项。打开工程属性未改之前的配置如下图,出现了一个-openmp。
将openmp添加到扩展编译选项,配置如下:
按照上图改完配置,就可以编译通过了。
总结:出现编译问题,习惯了一股脑怀疑自己电脑上少了什么库,毫无针对性得找解决方法。应该仔细看编译输出信息,有针对性的找解决方法。
………………………………