puzzlepaint / surfelmeshing

Real-time surfel-based mesh reconstruction from RGB-D video.
BSD 3-Clause "New" or "Revised" License
420 stars 83 forks source link

<COMPILE_LANGUAGE:...> Unknown language #11

Closed ousuixin closed 4 years ago

ousuixin commented 4 years ago

Hello, puzzlepaint. This is a great job and I'm appreciated for your open source code! however I got an error while compiling: CMake Error at CMakeLists.txt:385 (target_compile_options): Error evaluating generator expression:

$<COMPILE_LANGUAGE:CUDA>

$ Unknown language. when I do cmake.

And If I ignore this error, I would got : /libvis/src/libvis/cuda/patch_match_stereo.h:32:10: fatal error: curand_kernel.h: No such file or directory then.

could you help me with this problem? thanks!

I use Nvidia RTX 2080, CUDA 10.2 And all dependency satisfied.

puzzlepaint commented 4 years ago

Probably you are using an old CMake version? If so, I would try updating it.

ousuixin commented 4 years ago

my cmake version is 3.10.2, I thhink there are some other reasons

ousuixin commented 4 years ago

CUDA 10.2 use Turing architecture, with CMAKE_CUDA_FLAGS="-arch=sm_75" , however in the SelectCudaComputeArch.cmake, GPU_ARCHITECTURES was up to sm_61

ousuixin commented 4 years ago

emmm, finally I finish this by adding cmake parameter : -DCMAKE_CUDA_COMPILER="/usr/local/cuda-10.2/bin/nvcc". thanks!

puzzlepaint commented 4 years ago

Glad that you found the issue. I believe that SelectCudaComputeArch.cmake should not be in use (anymore). So it seems that the issue was CMake not finding CUDA? I guess that there is nothing to be done on the side of SurfelMeshing then, apart from possibly clarifying the error message, which I did in a9dfe90, and removing the unused CMake file (2761d25).