g2o的安装
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了g2o的安装相关的知识,希望对你有一定的参考价值。
环境ubuntu 14.04
在qt4上的使用
1.安装必须的依赖库
sudo apt-get install libeigen3-dev libsuitesparse-dev libqt4-dev qt4-qmake libqglviewer-qt4-dev
库libqglviewer-qt4-dev是编译g2o_viewer所必须的。
2.要下载qt4版本的g2o否则g2o_viewer是没法编译生成的。
地址:https://github.com/RainerKuemmerle/g2o/tree/1b118ac2ed2055c4016c3b7cbd710225ed1651af
3.将下载下来的包放到文件夹,然后执行
mkdir build cd build cmake ../ make
编 译完以后,在bin文件夹里就生成了各种可执行文件了,包括g2o_viewer,tutorial_slam2d等。为了把这个g2o当作一个外部库在 自己程序中(像opencv一样)使用,make编译完以后,再用sudo make install 安装一下这个库。执行完命令,将看到 /usr/local/include文件夹里多了g2o这一项。注意,不install也行,但是自己程序里调用g2o时cmaklist的书写就不一 样了,可以参看orb_slam。
4.但是在执行g2o_viewer的时候,还是会出问题,报错
error while loading shared libraries: libg2o_viewer.so: cannot open shared object file: No such file or directory
发现问题的原因是在默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,通过源码包进行安装时,如果不指定--prefix会将 库安装在/usr/local目录下,而又没有在文件/etc/ld.so.conf中添加 /usr/local/lib这个目录。这样虽然安装了源码包,但是使用时仍然找不到相关的.so库,就会报错。也就是说系统不知道安装了源码包。网络上 的解决方法是在/etc/ld.so.conf里添加绝对路径/usr/local/lib,作为一个新手,我实在不知道怎么样添加进去,用gedit编 辑之后,不能保存,用echo /usr/local/lib >> /etc/ld.so.conf没反应,于是我就采用了奇葩方法:用gedit打开/etc/ld.so.conf,然后添加/usr/local /lib ,再把这个文件保存到home,然后sudo cp /etc/ld.so.conf /home,之后,在home目录下执行ldconfig(这一步是必须的,目的是利用ldconfig执行文件将 /etc/ld.so.conf的数据读入高速缓存中),再次运行g2o_viewer result_after.g2o成功!
http://www.cnblogs.com/gaoxiang12/p/4770813.html
下面是在qt5上的使用
转载自http://blog.csdn.net/kyosho/article/details/54614175
依赖关系
必须:
Cmake
Eigen3
1、安装cmake
2、编译eigen3
mkdir build
cd build/
cmake ..
sudo make install
可选(显示用)
Qt5
libQGLViewer
3、qt下载http://download.qt.io/archive/qt/5.7/5.7.1/ (qt有点作,一定要注册,安装时要验证的)
安装qt (./qt-opensource-Linux-x64-5.7.1.run )
默认装好qmake不能直接被调用,需要修改一下安装路径。
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser
sudo gedit default.conf
#replace default
#/home/user/3rdparty_lib/Qt5.7.1/5.7/gcc_64/bin
#/home/user/3rdparty_lib/Qt5.7.1
4、libQGLViewer 下载http://www.libqglviewer.com/
cd libQGLViewer-2.6.4/
qmake
make
5、github下载g20
https://github.com/RainerKuemmerle/g2o
修改cmake_modules/FindQGLViewer.cmake
添加qt和QGLViewer配置
set(Qt5_DIR "/home/user/3rdparty_lib/Qt5.7.1/5.7/gcc_64/lib/cmake/Qt5")
set(QGLVIEWER_INCLUDE_DIR "/home/user/3rdparty_lib/libQGLViewer-2.6.4/QGLViewer")
set(QGLVIEWER_LIBRARY_RELEASE "/home/user/3rdparty_lib/libQGLViewer-2.6.4/QGLViewer/libQGLViewer-qt5.so")
mkdir build
cd build
cmake ..
make -j4
以上是关于g2o的安装的主要内容,如果未能解决你的问题,请参考以下文章
file INSTALL cannot set permissions on “/usr/local/include/g2o/config.h“