COLMAP 3.13.0 + CUDA 12.9 + Ubuntu24.04 编译

COLMAP 3.13.0 + CUDA 12.9 + Ubuntu24.04 编译

  • [1. 安装CUDA](#1. 安装CUDA)
  • [2. 按照官网配置安装第三方库](#2. 按照官网配置安装第三方库)
  • [3. 按照官网流程编译colmap](#3. 按照官网流程编译colmap)

前清提要:由于显卡是最新的50系,所以CUDA只能装最新版本12.9

1. 安装CUDA

自行搜索需要版本的教程,此处不赘述

2. 按照官网配置安装第三方库

colmap官方配置

执行完官方配置里的第三方库安装之后,由于colmap版本更新,多依赖了一个新的库

复制代码
sudo apt-get install libopenimageio-dev openimageio-tools

3. 按照官网流程编译colmap

复制代码
git clone https://github.com/colmap/colmap.git
cd colmap
mkdir build
cd build
cmake .. -GNinja -DBLA_VENDOR=Intel10_64lp
ninja
sudo ninja install

我在cmake的时候遇到一个新问题,报错如下

复制代码
Compiling the CUDA compiler identification source file
  "CMakeCUDACompilerId.cu" failed.

  Compiler: /usr/local/cuda/bin/nvcc

  Build flags:

  Id flags: --keep;--keep-dir;tmp -v

后来查询得知,是因为没有找到正确nvcc的位置

原始bug解决方法链接

首先在控制台输入

复制代码
which nvcc

就可以看到nvcc的路径,没有的话说明cuda没有正确安装,重装cuda

然后把对应路径填入下面的对应位置,不要带引号,在cmake编译指令加上下面这句话

复制代码
-DCMAKE_CUDA_COMPILER=`which nvcc`

对我来说,cmake完整的编译指令为

复制代码
cmake .. -GNinja -DBLA_VENDOR=Intel10_64lp -DCMAKE_CUDA_COMPILER=/usr/local/cuda-12/bin/nvcc

编译完成!

相关推荐
见过夏天4 小时前
C++ 基础入门完全指南
c++
用户805533698031 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
BadBadBad__AK2 天前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境2 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境3 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴3 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境5 天前
C++ 的Eigen 库全解析
c++
卷无止境5 天前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端
郝学胜_神的一滴6 天前
CMake 27:缓存变量的特性、语法、类型与实操全解
c++·cmake
博客18007 天前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝