Step1:https://github.com/felixendres/rgbdslam_v2/wiki/Instructions-for-Compiling-Rgbdslam-(V2)-on-a-Fresh-Ubuntu-16.04-Install-(Ros-Kinetic)-in-Virtualbox
照著這個instructions安裝好 rgbdslamv2,并且在安裝的過程中,后續要用的依賴也已經安裝好了
Step2:https://www.twblogs.net/a/5c542fdcbd9eee06ee218f6c/zh-cn
照著高翔的指導一步一步的學習,存在的大部分問題在上面的博客中可以解決
備注:
關于g20部分,代碼提示c++11不兼容等諸多問題,在src目錄下添加支持c++11即可
include(CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) if(COMPILER_SUPPORTS_CXX11)set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") elseif(COMPILER_SUPPORTS_CXX0X)set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") else()message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.") endif()if(COMMAND cmake_policy)cmake_policy(SET CMP0003 NEW) endif(COMMAND cmake_policy)
step3:關于g2o_viewer提示core dump段錯誤問題
這是因為編譯時qt4? qt5不兼容問題,解決辦法,(qt5 版本)
- 1 sudo apt-get install libqglviewer-dev
- 2 qmake -v 檢查是不是qt5
- 3 找到g2o源碼目錄的cmake_module目錄,打開FindQGViewer.cmake
- 4 把前幾行關于qt4的部分注釋掉添加
# Need to find both Qt{4,5} and QGLViewer if the QQL support is to be built #FIND_PACKAGE(Qt4 COMPONENTS QtCore QtXml QtOpenGL QtGui) #IF(NOT Qt4_FOUND) # FIND_PACKAGE(Qt5 QUIET COMPONENTS Core Xml OpenGL Gui Widgets) # IF(NOT Qt4_FOUND AND NOT Qt5_FOUND) # MESSAGE("Qt{4,5} not found. Install it and set Qt{4,5}_DIR accordingly") # IF (WIN32) # MESSAGE(" In Windows, Qt5_DIR should be something like C:/Qt/5.4/msvc2013_64_opengl/lib/cmake/Qt5") # ENDIF() # ENDIF() #ENDIF() FIND_PACKAGE(Qt5 COMPONENTS Core Xml OpenGL Gui Widgets) IF(NOT Qt5_FOUND)MESSAGE("Qt5 not found. Install it and set Qt5_DIR accordingly")IF (WIN32)MESSAGE(" In Windows, Qt5_DIR should be something like C:/Qt/5.4/msvc2013_64_opengl/lib/cmake/Qt5")ENDIF() ENDIF()
關于find_library(QGLVIEWER_LIBRARY_RELEASE 和 find_library(QGLVIEWER_LIBRARY_DEBUG的部分 改成一下內容
find_library(QGLVIEWER_LIBRARY_RELEASE#NAMES qglviewer-qt4 qglviewer QGLViewer QGLViewer2#NAMES qglviewer-qt5 QGLViewer-qt5#NAMES qglviewer-qt4 QGLViewer-qt4 qglviewer QGLViewer QGLViewer2NAMES qglviewer QGLViewerPATHS /usr/lib/usr/local/lib/opt/local/lib/usr/lib/x86_64-linux-gnu/sw/libENV QGLVIEWERROOTENV LD_LIBRARY_PATHENV LIBRARY_PATHPATH_SUFFIXES QGLViewer QGLViewer/release ) find_library(QGLVIEWER_LIBRARY_DEBUG#NAMES dqglviewer dQGLViewer dQGLViewer2 QGLViewerd2NAMES dqglviewer dQGLViewer dQGLViewer QGLViewerd2PATHS /usr/lib/usr/local/lib/opt/local/lib/usr/lib/x86_64-linux-gnu/sw/libENV QGLVIEWERROOTENV LD_LIBRARY_PATHENV LIBRARY_PATH#PATH_SUFFIXES QGLViewer QGLViewer/releasePATH_SUFFIXES QGLViewer QGLViewer/debug )
?
- 5 返回g2o/build ,執行
cmake .. make -j4 make install
?
- 6 運行g2o_viewer 便成功了
?
工作環境:ubuntu16.04