AlexeyAB / darknet

YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet )
http://pjreddie.com/darknet/
Other
21.68k stars 7.96k forks source link

CUDA not found, please build explicitly with -DENABLE_CUDA=OFF .(Solved~) #7582

Open SpongeBab opened 3 years ago

SpongeBab commented 3 years ago

I triedoption(ENABLE_CUDA "Enable CUDA support" OFF) and also failed. 图片

I have installed CUDA and cudnn.bug?

SpongeBab commented 3 years ago

@cenit

cenit commented 3 years ago

can you please try darknet from #7279 ?

SpongeBab commented 3 years ago

OH,@cenit, I have successed run the latest darknet. I have git the lastest version. And if i want to use CMake,I have to delete the build/darknet folder. Because it will generate the darknet procedure on the buildfolder.

2021-04-16 13-34-46 的屏幕截图 I don't konw whether it is right or not? Anyway, code is perfect now.And can use it directly by Makefile.But if I want to use Cmakelist,I need to delete the build/darknet folder. Thanks for your reply!:)

cenit commented 3 years ago

you should not need to delete anything.

can you please update darknet to the very latest version (git pull) and then launch ./build.ps1 and post full log?

cenit commented 3 years ago

note that to run build.ps1 script you need powershell installed

SpongeBab commented 3 years ago

OK. I just git clone the latest darknet.And I don not change anything. Then ./build.ps1:

(base) xiaopeng@xiaopeng-HP-Z800-Workstation:~$ cd Code/
(base) xiaopeng@xiaopeng-HP-Z800-Workstation:~/Code$ cd darknet/
(base) xiaopeng@xiaopeng-HP-Z800-Workstation:~/Code/darknet$ ./build.ps1 
Enable vcpkg to install darknet dependencies (yes/no): no
Enable CUDA integration (yes/no): yes
Enable CUDNN optional dependency (yes/no): yes
Enable OpenCV optional dependency (yes/no): yes
Native shell script extension: .sh
CUDA is enabled
CUDNN is enabled
OPENCV is enabled
OPENCV with CUDA extension is not enabled, you can enable it passing -EnableOPENCV_CUDA
VCPKG is disabled, please pass -UseVCPKG to the script to enable
VisualStudio integration is disabled
Ninja is enabled, please pass -DoNotUseNinja to the script to disable
ForceCPP build mode is disabled, please pass -ForceCPP to the script to enable
Using git from /usr/bin/git
^[OAfatal: 无法访问 'https://github.com/AlexeyAB/darknet/':GnuTLS recv error (-110): The TLS connection was non-properly terminated.
Using CMake from /usr/local/bin/cmake
Could not find Ninja, using msbuild or make backends as a fallback
Skipping vcpkg integration

Setting up environment to use CMake generator: Unix Makefiles
Removing folder ./build_release
   Directory: /home/xiaopeng/Code/darknet

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d----         2021/4/19   下午3:03                build_release
CMake args: -G "Unix Makefiles"  -DENABLE_VCPKG_INTEGRATION:BOOL=OFF -DVCPKG_BUILD_OPENCV_WITH_CUDA:BOOL=OFF -S ..
CMake Warning at CMakeLists.txt:67 (message):
  vcpkg not found, toolchain not defined, system not win32 so build might
  fail

-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 9.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Setting build type to 'Release' as none was specified.
-- Looking for a CUDA compiler
-- Looking for a CUDA compiler - /usr/local/cuda/bin/nvcc
-- The CUDA compiler identification is NVIDIA 10.1.105
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Selected CMAKE_CUDA_ARCHITECTURES: 30
-- Your setup does not support half precision (it requires CUDA_ARCHITECTURES >= 70)
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found OpenCV: /usr/local (found version "4.3.0") 
-- Found Stb: /home/xiaopeng/Code/darknet/3rdparty/stb/include  
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
--   ->  darknet is fine for now, but uselib_track has been disabled!
--   ->  Please rebuild OpenCV from sources with CUDA support to enable it
-- Found CUDNN: /usr/local/cuda/include (found version "?") 
-- CMAKE_CUDA_FLAGS:  --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast " 
-- ZED SDK not found
-- Configuring done
-- Generating done

....... And I can see it generates the darknet under the darknet folder Finally: ./darknet detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -thresh 0.25 data/dog.jpg I get the correct results.

 Detection layer: 139 - type = 28 
 Detection layer: 150 - type = 28 
 Detection layer: 161 - type = 28 
data/dog.jpg: Predicted in 440.016000 milli-seconds.
bicycle: 92%
dog: 98%
truck: 92%
pottedplant: 33%

Then I use vscode on ubuntu 20.04. I re-git clone the darknet to the new folder.Use vscode open the darknet.I use gcc0.3.0. The output is :

 [variant] Loaded new set of variants
[kit] Successfully loaded 8 kits from /home/xiaopeng/.local/share/CMakeTools/cmake-tools-kits.json
[main] Configuring folder: darknet 
[proc] Executing command: /usr/local/bin/cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER:FILEPATH=/bin/gcc-9 -DCMAKE_CXX_COMPILER:FILEPATH=/bin/g++-9 -H/home/xiaopeng/darknet2/darknet -B/home/xiaopeng/darknet2/darknet/build -G "Unix Makefiles"
[cmake] Not searching for unused variables given on the command line.
[cmake] CMake Warning at CMakeLists.txt:67 (message):
[cmake]   vcpkg not found, toolchain not defined, system not win32 so build might
[cmake]   fail
[cmake] 
[cmake] 
[cmake] -- The C compiler identification is GNU 9.3.0
[cmake] -- The CXX compiler identification is GNU 9.3.0
[cmake] -- Detecting C compiler ABI info
[cmake] -- Detecting C compiler ABI info - done
[cmake] -- Check for working C compiler: /bin/gcc-9 - skipped
[cmake] -- Detecting C compile features
[cmake] -- Detecting C compile features - done
[cmake] -- Detecting CXX compiler ABI info
[cmake] -- Detecting CXX compiler ABI info - done
[cmake] -- Check for working CXX compiler: /bin/g++-9 - skipped
[cmake] -- Detecting CXX compile features
[cmake] -- Detecting CXX compile features - done
[cmake] -- Looking for a CUDA compiler
[cmake] -- Looking for a CUDA compiler - /usr/local/cuda/bin/nvcc
[cmake] -- The CUDA compiler identification is NVIDIA 10.1.105
[cmake] -- Detecting CUDA compiler ABI info
[cmake] -- Detecting CUDA compiler ABI info - done
[cmake] -- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - skipped
[cmake] -- Detecting CUDA compile features
[cmake] -- Detecting CUDA compile features - done
[cmake] -- Selected CMAKE_CUDA_ARCHITECTURES: 30
[cmake] -- Your setup does not support half precision (it requires CUDA_ARCHITECTURES >= 70)
[cmake] -- Looking for pthread.h
[cmake] -- Looking for pthread.h - found
[cmake] -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
[cmake] -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
[cmake] -- Looking for pthread_create in pthreads
[cmake] -- Looking for pthread_create in pthreads - not found
[cmake] -- Looking for pthread_create in pthread
[cmake] -- Looking for pthread_create in pthread - found
[cmake] -- Found Threads: TRUE  
[cmake] -- Found OpenCV: /usr/local (found version "4.3.0") 
[cmake] -- Found Stb: /home/xiaopeng/darknet2/darknet/3rdparty/stb/include  
[cmake] -- Found OpenMP_C: -fopenmp (found version "4.5") 
[cmake] -- Found OpenMP_CXX: -fopenmp (found version "4.5") 
[cmake] -- Found OpenMP: TRUE (found version "4.5")  
[cmake] --   ->  darknet is fine for now, but uselib_track has been disabled!
[cmake] --   ->  Please rebuild OpenCV from sources with CUDA support to enable it
[cmake] -- Found CUDNN: /usr/local/cuda/include (found version "?") 
[cmake] -- CMAKE_CUDA_FLAGS:  --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast " 
[cmake] -- ZED SDK not found
[cmake] -- Configuring done
[cmake] -- Generating done
[cmake] -- Build files have been written to: /home/xiaopeng/darknet2/darknet/build

I use the build of vscode: 2021-04-19 15-26-16 的屏幕截图 And this is the output:

[main] Building folder: darknet 
[build] Starting build
[proc] Executing command: /usr/local/bin/cmake --build /home/xiaopeng/darknet2/darknet/build --config Release --target all -- -j 14
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -S/home/xiaopeng/darknet2/darknet -B/home/xiaopeng/darknet2/darknet/build --check-build-system CMakeFiles/Makefile.cmake 0
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_progress_start /home/xiaopeng/darknet2/darknet/build/CMakeFiles /home/xiaopeng/darknet2/darknet/build//CMakeFiles/progress.marks
[build] /usr/bin/make  -f CMakeFiles/Makefile2 all
[build] make[1]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] /usr/bin/make  -f CMakeFiles/dark.dir/build.make CMakeFiles/dark.dir/depend
[build] /usr/bin/make  -f CMakeFiles/darknet.dir/build.make CMakeFiles/darknet.dir/depend
[build] make[2]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] cd /home/xiaopeng/darknet2/darknet/build && /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_depends "Unix Makefiles" /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build/CMakeFiles/darknet.dir/DependInfo.cmake --color=
[build] make[2]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] cd /home/xiaopeng/darknet2/darknet/build && /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_depends "Unix Makefiles" /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build/CMakeFiles/dark.dir/DependInfo.cmake --color=
[build] make[2]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] /usr/bin/make  -f CMakeFiles/darknet.dir/build.make CMakeFiles/darknet.dir/build
[build] make[2]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
.........
FINAL:
[build] /usr/local/cuda/bin/nvcc  -DCUDNN -DGPU -DOPENCV -DUSE_CMAKE_LIBS -I/home/xiaopeng/darknet2/darknet/include -I/home/xiaopeng/darknet2/darknet/src -I/home/xiaopeng/darknet2/darknet/3rdparty/stb/include -I/usr/local/cuda/targets/x86_64-linux/include -isystem=/usr/local/cuda/include -isystem=/usr/local/include/opencv4 --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast "  -O3 -DNDEBUG --generate-code=arch=compute_30,code=[compute_30,sm_30] -std=c++11 -x cu -M /home/xiaopeng/darknet2/darknet/src/maxpool_layer_kernels.cu -MT CMakeFiles/darknet.dir/src/maxpool_layer_kernels.cu.o -o CMakeFiles/darknet.dir/src/maxpool_layer_kernels.cu.o.d
[build] /usr/local/cuda/bin/nvcc  -DCUDNN -DGPU -DOPENCV -DUSE_CMAKE_LIBS -I/home/xiaopeng/darknet2/darknet/include -I/home/xiaopeng/darknet2/darknet/src -I/home/xiaopeng/darknet2/darknet/3rdparty/stb/include -I/usr/local/cuda/targets/x86_64-linux/include -isystem=/usr/local/cuda/include -isystem=/usr/local/include/opencv4 --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast "  -O3 -DNDEBUG --generate-code=arch=compute_30,code=[compute_30,sm_30] -std=c++11 -x cu -M /home/xiaopeng/darknet2/darknet/src/network_kernels.cu -MT CMakeFiles/darknet.dir/src/network_kernels.cu.o -o CMakeFiles/darknet.dir/src/network_kernels.cu.o.d
[build] /usr/local/cuda/bin/nvcc  -DCUDNN -DGPU -DLIB_EXPORTS=1 -DOPENCV -DUSE_CMAKE_LIBS -Ddark_EXPORTS -I/home/xiaopeng/darknet2/darknet/include -I/home/xiaopeng/darknet2/darknet/src -I/home/xiaopeng/darknet2/darknet/3rdparty/stb/include -I/usr/local/cuda/targets/x86_64-linux/include -isystem=/usr/local/include/opencv4 -isystem=/usr/local/cuda/include --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast "  -O3 -DNDEBUG --generate-code=arch=compute_30,code=[compute_30,sm_30] -Xcompiler=-fPIC -std=c++11 -x cu -M /home/xiaopeng/darknet2/darknet/src/im2col_kernels.cu -MT CMakeFiles/dark.dir/src/im2col_kernels.cu.o -o CMakeFiles/dark.dir/src/im2col_kernels.cu.o.d
[build] /usr/local/cuda/bin/nvcc  -DCUDNN -DGPU -DOPENCV -DUSE_CMAKE_LIBS -I/home/xiaopeng/darknet2/darknet/include -I/home/xiaopeng/darknet2/darknet/src -I/home/xiaopeng/darknet2/darknet/3rdparty/stb/include -I/usr/local/cuda/targets/x86_64-linux/include -isystem=/usr/local/cuda/include -isystem=/usr/local/include/opencv4 --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast "  -O3 -DNDEBUG --generate-code=arch=compute_30,code=[compute_30,sm_30] -std=c++11 -x cu -M /home/xiaopeng/darknet2/darknet/src/im2col_kernels.cu -MT CMakeFiles/darknet.dir/src/im2col_kernels.cu.o -o CMakeFiles/darknet.dir/src/im2col_kernels.cu.o.d
[build] [ 97%] Linking CXX executable darknet
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_link_script CMakeFiles/darknet.dir/link.txt --verbose=1
[build] /bin/g++-9 -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -Wl,-Bsymbolic  -Ofast -DNDEBUG CMakeFiles/darknet.dir/src/darknet.c.o CMakeFiles/darknet.dir/src/activation_layer.c.o CMakeFiles/darknet.dir/src/activations.c.o CMakeFiles/darknet.dir/src/art.c.o CMakeFiles/darknet.dir/src/avgpool_layer.c.o CMakeFiles/darknet.dir/src/batchnorm_layer.c.o CMakeFiles/darknet.dir/src/blas.c.o CMakeFiles/darknet.dir/src/box.c.o CMakeFiles/darknet.dir/src/captcha.c.o CMakeFiles/darknet.dir/src/cifar.c.o CMakeFiles/darknet.dir/src/classifier.c.o CMakeFiles/darknet.dir/src/coco.c.o CMakeFiles/darknet.dir/src/col2im.c.o CMakeFiles/darknet.dir/src/compare.c.o CMakeFiles/darknet.dir/src/connected_layer.c.o CMakeFiles/darknet.dir/src/conv_lstm_layer.c.o CMakeFiles/darknet.dir/src/convolutional_layer.c.o CMakeFiles/darknet.dir/src/cost_layer.c.o CMakeFiles/darknet.dir/src/cpu_gemm.c.o CMakeFiles/darknet.dir/src/crnn_layer.c.o CMakeFiles/darknet.dir/src/crop_layer.c.o CMakeFiles/darknet.dir/src/dark_cuda.c.o CMakeFiles/darknet.dir/src/data.c.o CMakeFiles/darknet.dir/src/deconvolutional_layer.c.o CMakeFiles/darknet.dir/src/demo.c.o CMakeFiles/darknet.dir/src/detection_layer.c.o CMakeFiles/darknet.dir/src/detector.c.o CMakeFiles/darknet.dir/src/dice.c.o CMakeFiles/darknet.dir/src/dropout_layer.c.o CMakeFiles/darknet.dir/src/gaussian_yolo_layer.c.o CMakeFiles/darknet.dir/src/gemm.c.o CMakeFiles/darknet.dir/src/go.c.o CMakeFiles/darknet.dir/src/gru_layer.c.o CMakeFiles/darknet.dir/src/im2col.c.o CMakeFiles/darknet.dir/src/image.c.o CMakeFiles/darknet.dir/src/layer.c.o CMakeFiles/darknet.dir/src/list.c.o CMakeFiles/darknet.dir/src/local_layer.c.o CMakeFiles/darknet.dir/src/lstm_layer.c.o CMakeFiles/darknet.dir/src/matrix.c.o CMakeFiles/darknet.dir/src/maxpool_layer.c.o CMakeFiles/darknet.dir/src/network.c.o CMakeFiles/darknet.dir/src/nightmare.c.o CMakeFiles/darknet.dir/src/normalization_layer.c.o CMakeFiles/darknet.dir/src/option_list.c.o CMakeFiles/darknet.dir/src/parser.c.o CMakeFiles/darknet.dir/src/region_layer.c.o CMakeFiles/darknet.dir/src/reorg_layer.c.o CMakeFiles/darknet.dir/src/reorg_old_layer.c.o CMakeFiles/darknet.dir/src/rnn.c.o CMakeFiles/darknet.dir/src/rnn_layer.c.o CMakeFiles/darknet.dir/src/rnn_vid.c.o CMakeFiles/darknet.dir/src/route_layer.c.o CMakeFiles/darknet.dir/src/sam_layer.c.o CMakeFiles/darknet.dir/src/scale_channels_layer.c.o CMakeFiles/darknet.dir/src/shortcut_layer.c.o CMakeFiles/darknet.dir/src/softmax_layer.c.o CMakeFiles/darknet.dir/src/super.c.o CMakeFiles/darknet.dir/src/swag.c.o CMakeFiles/darknet.dir/src/tag.c.o CMakeFiles/darknet.dir/src/tree.c.o CMakeFiles/darknet.dir/src/upsample_layer.c.o CMakeFiles/darknet.dir/src/utils.c.o CMakeFiles/darknet.dir/src/voxel.c.o CMakeFiles/darknet.dir/src/writing.c.o CMakeFiles/darknet.dir/src/yolo.c.o CMakeFiles/darknet.dir/src/yolo_layer.c.o CMakeFiles/darknet.dir/src/http_stream.cpp.o CMakeFiles/darknet.dir/src/image_opencv.cpp.o CMakeFiles/darknet.dir/src/activation_kernels.cu.o CMakeFiles/darknet.dir/src/avgpool_layer_kernels.cu.o CMakeFiles/darknet.dir/src/blas_kernels.cu.o CMakeFiles/darknet.dir/src/col2im_kernels.cu.o CMakeFiles/darknet.dir/src/convolutional_kernels.cu.o CMakeFiles/darknet.dir/src/crop_layer_kernels.cu.o CMakeFiles/darknet.dir/src/deconvolutional_kernels.cu.o CMakeFiles/darknet.dir/src/dropout_layer_kernels.cu.o CMakeFiles/darknet.dir/src/im2col_kernels.cu.o CMakeFiles/darknet.dir/src/maxpool_layer_kernels.cu.o CMakeFiles/darknet.dir/src/network_kernels.cu.o -o darknet   -L/usr/local/cuda/targets/x86_64-linux/lib/stubs  -L/usr/local/cuda/targets/x86_64-linux/lib  -Wl,-rpath,/usr/local/cuda/lib64:/usr/local/lib: /usr/local/cuda/lib64/libcudnn.so /usr/local/lib/libopencv_dnn.so.4.3.0 /usr/local/lib/libopencv_gapi.so.4.3.0 /usr/local/lib/libopencv_highgui.so.4.3.0 /usr/local/lib/libopencv_ml.so.4.3.0 /usr/local/lib/libopencv_objdetect.so.4.3.0 /usr/local/lib/libopencv_photo.so.4.3.0 /usr/local/lib/libopencv_stitching.so.4.3.0 /usr/local/lib/libopencv_video.so.4.3.0 /usr/local/lib/libopencv_videoio.so.4.3.0 -lm -lcurand -lcublas -lcuda /usr/local/lib/libopencv_imgcodecs.so.4.3.0 /usr/local/lib/libopencv_calib3d.so.4.3.0 /usr/local/lib/libopencv_features2d.so.4.3.0 /usr/local/lib/libopencv_flann.so.4.3.0 /usr/local/lib/libopencv_imgproc.so.4.3.0 /usr/local/lib/libopencv_core.so.4.3.0 /usr/lib/gcc/x86_64-linux-gnu/9/libgomp.so /usr/lib/x86_64-linux-gnu/libpthread.so -lpthread -lcudadevrt -lcudart 
[build] make[2]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] /usr/bin/ld: cannot open output file darknet: 是一个目录
[build] collect2: error: ld returned 1 exit status
[build] make[2]: *** [CMakeFiles/darknet.dir/build.make:1393:darknet] 错误 1
[build] make[1]: *** [CMakeFiles/Makefile2:142:CMakeFiles/darknet.dir/all] 错误 2
[build] make[1]: *** 正在等待未完成的任务....
[build] [ 98%] Linking CUDA device code CMakeFiles/dark.dir/cmake_device_link.o
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_link_script CMakeFiles/dark.dir/dlink.txt --verbose=1
[build] /usr/local/cuda/bin/nvcc   --compiler-options " -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -DGPU -DCUDNN -DOPENCV -fPIC -fopenmp -Ofast "  -O3 -DNDEBUG --generate-code=arch=compute_30,code=[compute_30,sm_30] -Xcompiler=-fPIC -Wno-deprecated-gpu-targets -shared -dlink CMakeFiles/dark.dir/src/yolo_v2_class.cpp.o CMakeFiles/dark.dir/src/activation_layer.c.o CMakeFiles/dark.dir/src/activations.c.o CMakeFiles/dark.dir/src/art.c.o CMakeFiles/dark.dir/src/avgpool_layer.c.o CMakeFiles/dark.dir/src/batchnorm_layer.c.o CMakeFiles/dark.dir/src/blas.c.o CMakeFiles/dark.dir/src/box.c.o CMakeFiles/dark.dir/src/captcha.c.o CMakeFiles/dark.dir/src/cifar.c.o CMakeFiles/dark.dir/src/classifier.c.o CMakeFiles/dark.dir/src/coco.c.o CMakeFiles/dark.dir/src/col2im.c.o CMakeFiles/dark.dir/src/compare.c.o CMakeFiles/dark.dir/src/connected_layer.c.o CMakeFiles/dark.dir/src/conv_lstm_layer.c.o CMakeFiles/dark.dir/src/convolutional_layer.c.o CMakeFiles/dark.dir/src/cost_layer.c.o CMakeFiles/dark.dir/src/cpu_gemm.c.o CMakeFiles/dark.dir/src/crnn_layer.c.o CMakeFiles/dark.dir/src/crop_layer.c.o CMakeFiles/dark.dir/src/dark_cuda.c.o CMakeFiles/dark.dir/src/data.c.o CMakeFiles/dark.dir/src/deconvolutional_layer.c.o CMakeFiles/dark.dir/src/demo.c.o CMakeFiles/dark.dir/src/detection_layer.c.o CMakeFiles/dark.dir/src/detector.c.o CMakeFiles/dark.dir/src/dice.c.o CMakeFiles/dark.dir/src/dropout_layer.c.o CMakeFiles/dark.dir/src/gaussian_yolo_layer.c.o CMakeFiles/dark.dir/src/gemm.c.o CMakeFiles/dark.dir/src/go.c.o CMakeFiles/dark.dir/src/gru_layer.c.o CMakeFiles/dark.dir/src/im2col.c.o CMakeFiles/dark.dir/src/image.c.o CMakeFiles/dark.dir/src/layer.c.o CMakeFiles/dark.dir/src/list.c.o CMakeFiles/dark.dir/src/local_layer.c.o CMakeFiles/dark.dir/src/lstm_layer.c.o CMakeFiles/dark.dir/src/matrix.c.o CMakeFiles/dark.dir/src/maxpool_layer.c.o CMakeFiles/dark.dir/src/network.c.o CMakeFiles/dark.dir/src/nightmare.c.o CMakeFiles/dark.dir/src/normalization_layer.c.o CMakeFiles/dark.dir/src/option_list.c.o CMakeFiles/dark.dir/src/parser.c.o CMakeFiles/dark.dir/src/region_layer.c.o CMakeFiles/dark.dir/src/reorg_layer.c.o CMakeFiles/dark.dir/src/reorg_old_layer.c.o CMakeFiles/dark.dir/src/rnn.c.o CMakeFiles/dark.dir/src/rnn_layer.c.o CMakeFiles/dark.dir/src/rnn_vid.c.o CMakeFiles/dark.dir/src/route_layer.c.o CMakeFiles/dark.dir/src/sam_layer.c.o CMakeFiles/dark.dir/src/scale_channels_layer.c.o CMakeFiles/dark.dir/src/shortcut_layer.c.o CMakeFiles/dark.dir/src/softmax_layer.c.o CMakeFiles/dark.dir/src/super.c.o CMakeFiles/dark.dir/src/swag.c.o CMakeFiles/dark.dir/src/tag.c.o CMakeFiles/dark.dir/src/tree.c.o CMakeFiles/dark.dir/src/upsample_layer.c.o CMakeFiles/dark.dir/src/utils.c.o CMakeFiles/dark.dir/src/voxel.c.o CMakeFiles/dark.dir/src/writing.c.o CMakeFiles/dark.dir/src/yolo.c.o CMakeFiles/dark.dir/src/yolo_layer.c.o CMakeFiles/dark.dir/src/http_stream.cpp.o CMakeFiles/dark.dir/src/image_opencv.cpp.o CMakeFiles/dark.dir/src/activation_kernels.cu.o CMakeFiles/dark.dir/src/avgpool_layer_kernels.cu.o CMakeFiles/dark.dir/src/blas_kernels.cu.o CMakeFiles/dark.dir/src/col2im_kernels.cu.o CMakeFiles/dark.dir/src/convolutional_kernels.cu.o CMakeFiles/dark.dir/src/crop_layer_kernels.cu.o CMakeFiles/dark.dir/src/deconvolutional_kernels.cu.o CMakeFiles/dark.dir/src/dropout_layer_kernels.cu.o CMakeFiles/dark.dir/src/im2col_kernels.cu.o CMakeFiles/dark.dir/src/maxpool_layer_kernels.cu.o CMakeFiles/dark.dir/src/network_kernels.cu.o -o CMakeFiles/dark.dir/cmake_device_link.o   -L/usr/local/cuda/targets/x86_64-linux/lib/stubs  -L/usr/local/cuda/targets/x86_64-linux/lib   -lm -lcurand -lcublas -lcuda -lpthread -lcudadevrt -lcudart 
[build] [ 98%] Linking CXX shared library libdarknet.so
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_link_script CMakeFiles/dark.dir/link.txt --verbose=1
[build] /bin/g++-9 -fPIC -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -Wl,-Bsymbolic  -Ofast -DNDEBUG -shared -Wl,-soname,libdarknet.so -o libdarknet.so CMakeFiles/dark.dir/src/yolo_v2_class.cpp.o CMakeFiles/dark.dir/src/activation_layer.c.o CMakeFiles/dark.dir/src/activations.c.o CMakeFiles/dark.dir/src/art.c.o CMakeFiles/dark.dir/src/avgpool_layer.c.o CMakeFiles/dark.dir/src/batchnorm_layer.c.o CMakeFiles/dark.dir/src/blas.c.o CMakeFiles/dark.dir/src/box.c.o CMakeFiles/dark.dir/src/captcha.c.o CMakeFiles/dark.dir/src/cifar.c.o CMakeFiles/dark.dir/src/classifier.c.o CMakeFiles/dark.dir/src/coco.c.o CMakeFiles/dark.dir/src/col2im.c.o CMakeFiles/dark.dir/src/compare.c.o CMakeFiles/dark.dir/src/connected_layer.c.o CMakeFiles/dark.dir/src/conv_lstm_layer.c.o CMakeFiles/dark.dir/src/convolutional_layer.c.o CMakeFiles/dark.dir/src/cost_layer.c.o CMakeFiles/dark.dir/src/cpu_gemm.c.o CMakeFiles/dark.dir/src/crnn_layer.c.o CMakeFiles/dark.dir/src/crop_layer.c.o CMakeFiles/dark.dir/src/dark_cuda.c.o CMakeFiles/dark.dir/src/data.c.o CMakeFiles/dark.dir/src/deconvolutional_layer.c.o CMakeFiles/dark.dir/src/demo.c.o CMakeFiles/dark.dir/src/detection_layer.c.o CMakeFiles/dark.dir/src/detector.c.o CMakeFiles/dark.dir/src/dice.c.o CMakeFiles/dark.dir/src/dropout_layer.c.o CMakeFiles/dark.dir/src/gaussian_yolo_layer.c.o CMakeFiles/dark.dir/src/gemm.c.o CMakeFiles/dark.dir/src/go.c.o CMakeFiles/dark.dir/src/gru_layer.c.o CMakeFiles/dark.dir/src/im2col.c.o CMakeFiles/dark.dir/src/image.c.o CMakeFiles/dark.dir/src/layer.c.o CMakeFiles/dark.dir/src/list.c.o CMakeFiles/dark.dir/src/local_layer.c.o CMakeFiles/dark.dir/src/lstm_layer.c.o CMakeFiles/dark.dir/src/matrix.c.o CMakeFiles/dark.dir/src/maxpool_layer.c.o CMakeFiles/dark.dir/src/network.c.o CMakeFiles/dark.dir/src/nightmare.c.o CMakeFiles/dark.dir/src/normalization_layer.c.o CMakeFiles/dark.dir/src/option_list.c.o CMakeFiles/dark.dir/src/parser.c.o CMakeFiles/dark.dir/src/region_layer.c.o CMakeFiles/dark.dir/src/reorg_layer.c.o CMakeFiles/dark.dir/src/reorg_old_layer.c.o CMakeFiles/dark.dir/src/rnn.c.o CMakeFiles/dark.dir/src/rnn_layer.c.o CMakeFiles/dark.dir/src/rnn_vid.c.o CMakeFiles/dark.dir/src/route_layer.c.o CMakeFiles/dark.dir/src/sam_layer.c.o CMakeFiles/dark.dir/src/scale_channels_layer.c.o CMakeFiles/dark.dir/src/shortcut_layer.c.o CMakeFiles/dark.dir/src/softmax_layer.c.o CMakeFiles/dark.dir/src/super.c.o CMakeFiles/dark.dir/src/swag.c.o CMakeFiles/dark.dir/src/tag.c.o CMakeFiles/dark.dir/src/tree.c.o CMakeFiles/dark.dir/src/upsample_layer.c.o CMakeFiles/dark.dir/src/utils.c.o CMakeFiles/dark.dir/src/voxel.c.o CMakeFiles/dark.dir/src/writing.c.o CMakeFiles/dark.dir/src/yolo.c.o CMakeFiles/dark.dir/src/yolo_layer.c.o CMakeFiles/dark.dir/src/http_stream.cpp.o CMakeFiles/dark.dir/src/image_opencv.cpp.o CMakeFiles/dark.dir/src/activation_kernels.cu.o CMakeFiles/dark.dir/src/avgpool_layer_kernels.cu.o CMakeFiles/dark.dir/src/blas_kernels.cu.o CMakeFiles/dark.dir/src/col2im_kernels.cu.o CMakeFiles/dark.dir/src/convolutional_kernels.cu.o CMakeFiles/dark.dir/src/crop_layer_kernels.cu.o CMakeFiles/dark.dir/src/deconvolutional_kernels.cu.o CMakeFiles/dark.dir/src/dropout_layer_kernels.cu.o CMakeFiles/dark.dir/src/im2col_kernels.cu.o CMakeFiles/dark.dir/src/maxpool_layer_kernels.cu.o CMakeFiles/dark.dir/src/network_kernels.cu.o CMakeFiles/dark.dir/cmake_device_link.o   -L/usr/local/cuda/targets/x86_64-linux/lib/stubs  -L/usr/local/cuda/targets/x86_64-linux/lib  -Wl,-rpath,/usr/local/cuda/lib64:/usr/local/lib: /usr/local/cuda/lib64/libcudnn.so /usr/local/lib/libopencv_dnn.so.4.3.0 /usr/local/lib/libopencv_gapi.so.4.3.0 /usr/local/lib/libopencv_highgui.so.4.3.0 /usr/local/lib/libopencv_ml.so.4.3.0 /usr/local/lib/libopencv_objdetect.so.4.3.0 /usr/local/lib/libopencv_photo.so.4.3.0 /usr/local/lib/libopencv_stitching.so.4.3.0 /usr/local/lib/libopencv_video.so.4.3.0 /usr/local/lib/libopencv_videoio.so.4.3.0 -lm -lcurand -lcublas -lcuda /usr/local/lib/libopencv_imgcodecs.so.4.3.0 /usr/local/lib/libopencv_calib3d.so.4.3.0 /usr/local/lib/libopencv_features2d.so.4.3.0 /usr/local/lib/libopencv_flann.so.4.3.0 /usr/local/lib/libopencv_imgproc.so.4.3.0 /usr/local/lib/libopencv_core.so.4.3.0 /usr/lib/gcc/x86_64-linux-gnu/9/libgomp.so /usr/lib/x86_64-linux-gnu/libpthread.so -lpthread -lcudadevrt -lcudart 
[build] make[2]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] [ 98%] Built target dark
[build] make[1]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] make: *** [Makefile:139:all] 错误 2
[build] Build finished with exit code 2

And then I delete the build/darknet: 2021-04-19 15-30-41 的屏幕截图 Rebuild with vscode,output is like this:

Building folder: darknet 
[build] Starting build
[proc] Executing command: /usr/local/bin/cmake --build /home/xiaopeng/darknet2/darknet/build --config Release --target all -- -j 14
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -S/home/xiaopeng/darknet2/darknet -B/home/xiaopeng/darknet2/darknet/build --check-build-system CMakeFiles/Makefile.cmake 0
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_progress_start /home/xiaopeng/darknet2/darknet/build/CMakeFiles /home/xiaopeng/darknet2/darknet/build//CMakeFiles/progress.marks
[build] /usr/bin/make  -f CMakeFiles/Makefile2 all
[build] make[1]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] /usr/bin/make  -f CMakeFiles/dark.dir/build.make CMakeFiles/dark.dir/depend
[build] /usr/bin/make  -f CMakeFiles/darknet.dir/build.make CMakeFiles/darknet.dir/depend
[build] make[2]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] cd /home/xiaopeng/darknet2/darknet/build && /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_depends "Unix Makefiles" /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build/CMakeFiles/dark.dir/DependInfo.cmake --color=
[build] make[2]: 进入目录“/home/xiaopeng/darknet2/darknet/build”
[build] cd /home/xiaopeng/darknet2/darknet/build && /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_depends "Unix Makefiles" /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build /home/xiaopeng/darknet2/darknet/build/CMakeFiles/darknet.dir/DependInfo.cmake --color=
[build] Dependencies file "CMakeFiles/dark.dir/src/activation_layer.c.o.d" is newer than depends file "/home/xiaopeng/darknet2/darknet/build/CMakeFiles/dark.dir/compiler_depend.internal".
[build] Dependencies file "CMakeFiles/darknet.dir/src/activation_layer.c.o.d" is newer than depends file "/home/xiaopeng/darknet2/darknet/build/CMakeFiles/darknet.dir/compiler_depend.internal".
[build] Dependencies file "CMakeFiles/darknet.dir/src/activations.c.o.d" is newer than depends file "/home/xiaopeng/darknet2/darknet/build/CMakeFiles/darknet.dir/compiler_depend.internal".
[build] Dependencies file "CMakeFiles/dark.dir/src/activations.c.o.d" is newer than depends file "/home/xiaopeng/darknet2/darknet/build/CMakeFiles/dark.dir/compiler_depend.internal".
[build] Dependencies file "CMakeFiles/darknet.dir/src/art.c.o.d" is newer than depends file "/home/xiaopeng/darknet2/darknet/build/CMakeFiles/darknet.dir/compiler_depend.internal".
....

build] [100%] Linking CXX executable uselib
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_link_script CMakeFiles/uselib.dir/link.txt --verbose=1
[build] /bin/g++-9 -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings -Wl,-Bsymbolic  -Ofast -DNDEBUG CMakeFiles/uselib.dir/src/yolo_console_dll.cpp.o -o uselib  -Wl,-rpath,/home/xiaopeng/darknet2/darknet/build:/usr/local/lib: libdarknet.so /usr/local/lib/libopencv_dnn.so.4.3.0 /usr/local/lib/libopencv_gapi.so.4.3.0 /usr/local/lib/libopencv_highgui.so.4.3.0 /usr/local/lib/libopencv_ml.so.4.3.0 /usr/local/lib/libopencv_objdetect.so.4.3.0 /usr/local/lib/libopencv_photo.so.4.3.0 /usr/local/lib/libopencv_stitching.so.4.3.0 /usr/local/lib/libopencv_video.so.4.3.0 /usr/local/lib/libopencv_calib3d.so.4.3.0 /usr/local/lib/libopencv_features2d.so.4.3.0 /usr/local/lib/libopencv_flann.so.4.3.0 /usr/local/lib/libopencv_videoio.so.4.3.0 /usr/local/lib/libopencv_imgcodecs.so.4.3.0 /usr/local/lib/libopencv_imgproc.so.4.3.0 /usr/local/lib/libopencv_core.so.4.3.0 -lpthread /usr/lib/gcc/x86_64-linux-gnu/9/libgomp.so /usr/lib/x86_64-linux-gnu/libpthread.so -lm 
[build] make[2]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] [100%] Built target uselib
[build] make[1]: 离开目录“/home/xiaopeng/darknet2/darknet/build”
[build] /opt/cmake-3.20.0-linux-x86_64/bin/cmake -E cmake_progress_start /home/xiaopeng/darknet2/darknet/build/CMakeFiles 0
[build] Build finished with exit code 0

And it generate the darknet in /build 2021-04-19 15-35-05 的屏幕截图

It is the same as before. emmmmm,In a word, Can use the Cmake with ./build.ps1,but when I use vscode onthe ubuntu ,it will generate darknet under the build folder. The path to generate the darknet is different between the two methods. After I change the code,I must use the ./build.ps1 to rebuild it on terminal...? Maybe I use the VScode incorrectly...?Or this is a problem in ubuntu.

cenit commented 3 years ago

aaahhhhh yes now I understand. vscode defaults to the build folder, which unfortunately we also use in our project. That's why in build.ps1 i chose another folder, which is build_release... We can track this problem and see how to do it. Maybe we can embed a .vscode folder in darknet in order to redirect the automatic folder into another one... let me think about it. But glad that apart from this minor issue, darknet is working for you. Am i right?

SpongeBab commented 3 years ago

hhh,yeah,you are absolutely right.And sure,even if I have deleted the build/darknet folder,it can run perfectly. Maybe this issue would make a small contribution to darknet. After all, darknet is so perfect now.

BTW,do you plan to optimize the code.What I mean is to delete the code except for detection, as well as the code before v4. I am doing this work now, because I don’t use any functions other than detection. There in darknet.c:

2021-04-20 09-21-01 的屏幕截图

And I believe almost everyone is like me.Because I think the current code is a bit messy,it is not suitable to read and change for many people. Maybe can create another repo or branch ,it can named darknet_only_detection. Or make a plan just like darknetv1,darknetv2.0.... Only you and AlexAB and others have been maintaining this repo. Some other repo such as pytorch have been unmaintained for a long time, and no one answered an issue. And no repo has a readme like this one. I tried other versions of darknet. but I still chose your code in the end. hhh. But it is really difficult to modify the C language code🙉,not even c++. If this code is optimized, I believe it will be easier to modify the code, at least it will be easier to read.It will be more popular. Have you thought about this? Thank you so much:)

SpongeBab commented 3 years ago

If any one meet the problem:

[cmake] CMake Error at CMakeLists.txt:92 (message):
[cmake]   CUDA not found, please build explicitly with -DENABLE_CUDA=OFF if you do
[cmake]   not want CUDA

This is my solution, on the begin ,I thout it is bacause VSCode,but not. I just use the Makefile to make.And then it remind me:

/usr/local/cuda/include/crt/host_config.h:129:2: error: #error -- unsupported GNU version! gcc versions later than 8 are not supported!
  129 | #error -- unsupported GNU version! gcc versions later than 8 are not supported!
      |  ^~~~~

The cuda version and gcc version must correspond. I debugged another program and upgraded my gcc version to gcc9.。You can go to https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html to get more information.Cuda 11.2 is latest,maybe your gcc version is not up to date. I'm using VSCode,and I found change the gcc version in VSCode doesn't work.You must change the gcc version in the terminal with: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50 In the terminal My gcc version is the gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04).And I change the version by VSCode.Like this. 2021-04-26 09-27-05 的屏幕截图 And then it will output:

cmake] See also "/home/xiaopeng/YOLOV4/darknet/build/CMakeFiles/CMakeOutput.log".
[cmake] See also "/home/xiaopeng/YOLOV4/darknet/build/CMakeFiles/CMakeError.log".
[cmake] CMake Error at CMakeLists.txt:92 (message):
[cmake]   CUDA not found, please build explicitly with -DENABLE_CUDA=OFF if you do
[cmake]   not want CUDA
[cmake] 

Then I alternatived the gcc version in the terminal, I solved it.