Ubuntu 16.04, Nvidia toolkit 8.0 RC, darknet compilation error: expected a ;;

I am compiling Darknet on Ubuntu 16.04 with GPU support. Nvidial toolkit version 8.0 RC

And I'm stuck with an error:

nvcc --gpu-architecture=compute_52 --gpu-code=compute_52  -DOPENCV `pkg-config --cflags opencv`  -DGPU -I/usr/local/cuda/include/ --compiler-options "-Wall -Wfatal-errors  -Ofast -DOPENCV -DGPU" -c ./src/convolutional_kernels.cu -o obj/convolutional_kernels.o
/usr/local/cuda/include/surface_functions.h(134): error: expected a ";"

/usr/local/cuda/include/surface_functions.h(135): error: expected a ";"

/usr/local/cuda/include/surface_functions.h(136): error: expected a ";"

/usr/local/cuda/include/surface_functions.h on the error lines has something like this:

template<> __device__ __cudart_builtin__ char surf1Dread(surface<void, cudaSurfaceType1D> surf, int x, enum cudaSurfaceBoundaryMode mode) asm("__surf1Dread_char") ;

Any tips?

+4
source share
3 answers

If you have several versions of CUDA and they need them (like me), I recommend adding the following to your (BASH) RC:

# DARKNET
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

Put your RC ('. ~ / .Bashrc') and get the job done!

+8
source

This error occurs due to nvcc version 7.5

, Cuda toolkit 8.0 RC deb nvcc 8 cuda cuda_8.0.27_linux.run, .

+4

, nvcc, cuda .

Darknet /usr/local/cuda/include/ PATH nvcc. cuda .

, nvcc /usr/local/cuda/bin/nvcc.

nvcc- Makefile:

NVCC = nvcc NVCC =/usr/local/cuda/bin/nvcc

PATH make ( )

PATH=/usr/local/cuda/bin:$PATH make
+2

Source: https://habr.com/ru/post/1653409/


All Articles