ubuntu20安装colmap

MKT-porter / 2023-09-06 / 原文

 

教程

https://colmap.github.io/install.html

 

前提

r900k  3070显卡

cuda11.5

opencv3.4.9

如果有acoda先从环境变量去掉,以免导致多重库问题

 

起作用
source ~/.bashrc

  

gcc 11  g++  11

 

安装

sudo apt-get install \
    git \
    cmake \
    ninja-build \
    build-essential \
    libboost-program-options-dev \
    libboost-filesystem-dev \
    libboost-graph-dev \
    libboost-system-dev \
    libeigen3-dev \
    libflann-dev \
    libfreeimage-dev \
    libmetis-dev \
    libgoogle-glog-dev \
    libgtest-dev \
    libsqlite3-dev \
    libglew-dev \
    qtbase5-dev \
    libqt5opengl5-dev \
    libcgal-dev \
    libceres-dev

  

安装cuda支持

sudo apt-get install -y \
    nvidia-cuda-toolkit \
    nvidia-cuda-toolkit-gcc

  

报错1

Or, manually install latest CUDA from NVIDIA’s homepage. During CMake configuration specify CMAKE_CUDA_ARCHITECTURES as “native”, if you want to run COLMAP on your current machine only, “all”/”all-major” to be able to distribute to other machines, or a specific CUDA architecture like “70”, etc.

 

添加

 

 

 122行

set(CMAKE_CUDA_ARCHITECTURES "native") # 添加

  

 

 报错2

 ptxas fatal : Value 'sm_30' is not defined for option 'gpu-name'

  

 

 查询 

apt-cache policy nvidia-cuda-toolkit

  

 卸载 重装

sudo apt remove nvidia-cuda-toolkit

sudo apt install nvidia-cuda-toolkit

  

 

 

编译

git clone https://github.com/colmap/colmap.git
cd colmap
git checkout dev
mkdir build
cd build
cmake .. -GNinja
ninja
sudo ninja install