总体安装过程已经很明白了,写的人很多了,我就不赘述了,可以参考这里或者其他博客。我主要记录几个我遇到的问题以及解决方法。
1、cmake报错:No CMAKE_CUDA_COMPILER could be found.
这个原因是没找到cuda和nvcc目录,最简单的方法是在cmake的时候这样操作:
cmake .. -DCMAKE_CUDA_COMPILER:PATH=/usr/local/cuda-11.8/bin/nvcc -GNinja
具体cmake目录参照自己的版本和路径就好了
2、cmake报错:CMake Error at cmake/FindDependencies.cmake:125 (message): You must set CMAKE_CUDA_ARCHITECTURES to e.g. ‘native’, ‘all-major’, ‘70’,
这个需要在colmap/cmake/FindDependencies.cmake
文件里面加入一句set(CMAKE_CUDA_ARCHITECTURES "80")
,(注意这里的80这个数字是因为我是cuda11系列的,所以用80)具体位置如下图:
CUDA 10.x 最高支持算力为 7.x,CUDA 11.x 最高支持算力为 8.x
3、ninja报错:nvcc fatal : unsupported gpu architecture ‘compute_native’
错误原因就是上面的CMAKE_CUDA_ARCHITECTURES 设置错了,需要根据自己的cuda版本,在colmap/cmake/FindDependencies.cmake
设置正确的CMAKE_CUDA_ARCHITECTURES
,主要就是这个数字:
CUDA 10.x 最高支持算力为 7.x,CUDA 11.x 最高支持算力为 8.x