1、Linux中安装glew
1.安装GLEW。
大家可以在网上下载安装GLEW库(glew.sourceforge.net)这个主页现在很难上,我喜欢在APT命令安装。
在控制台输入:
sudo apt-get install libglew-dev glew-utils
2、linux安装pthread
由于学习多线程编程,所以用到pthread,但是man的时候却发现没有pthread函数库的手册页,然后安装
$sudo apt-get install glibc-doc
安装以后,发现还是有很多函数不全,只有一小部分pthread的函数,使用man -k pthread或apropos pthread可以查找到当前manpages中关于pthread的手册。安装manpages-posix-dev就可以了
$sudo apt-get install manpages-posix manpages-posix-dev
完成!
3、安装
https://blog.csdn.net/weixin_40127330/article/details/100114915
、获取源码:
git clone https://github.com/colmap/colmap
4、安装依赖项:
sudo apt-get install
git
cmake
build-essential
libboost-program-options-dev
libboost-filesystem-dev
libboost-graph-dev
libboost-regex-dev
libboost-system-dev
libboost-test-dev
libeigen3-dev
libsuitesparse-dev
libfreeimage-dev
libgoogle-glog-dev
libgflags-dev
libglew-dev
qtbase5-dev
libqt5opengl5-dev
libcgal-dev
PS:在Ubuntu16.04下,CGAL的cmake配置是损坏的,必须安装CGAL的qt5包:
sudo apt-get install libcgal-qt5-dev
5、编译安装Ceres-Solver:
sudo apt-get install libatlas-base-dev libsuitesparse-dev
git clone https://github.com/ceres-solver/ceres-solver (参考及官方的网站打不开,从github上下载)
cd ceres-solver
git checkout $(git describe --tags) ( 此条命令没用)
mkdir build
cd build
cmake .. -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF (我没有用后边的属性信息,直接cmake ..)
make -j12 (使用make -j12有可能会编译错误,我只是用了make)
sudo make install
6、配置和编译colmap:
cd colmap
git checkout dev
mkdir build
cd build
cmake ..
make -j12 (我只是用了make)
sudo make install
运行
colamp gui
成功打开一个colmap的窗口就说明安装成功了。
7、安装gcc5
unsupported GNU version! gcc versions later than 6 are not supported!
问题#error – unsupported GNU version! gcc versions later than 6 are not supported!,CUDA9.1不支持高版本的gcc
解决方法一: 安装低版本的gcc, 然后使用update-alternatives命令可以自由地切换不同版本的gcc
如下图的两句命令, 安装了低版本的gcc和g++, 图片来源于github
使用update-alternatives命令的好处是不用再手动修改gcc的软链接了, 方便快捷
error: #error – unsupported GNU version! gcc versions later than 6 are not supported!
错误的解决方式很简单,就是安装低版本gcc和g++,并创建链接或更改gcc各版本的优先级。
此处为以后考虑安装了gcc-5和g+±5,大家可以自行决定版本,只要比错误中提到的支持上限小就没问题
sudo apt-get install gcc-5
sudo apt-get install g+±5
然后执行
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g+±5 10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10