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{,} 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 QGLViewer2
    NAMES qglviewer QGLViewer
    PATHS /usr/lib
    /usr/local/lib
    /opt/local/lib
    /usr/lib/x86_64-linux-gnu
    /sw/lib
    ENV QGLVIEWERROOT
    ENV LD_LIBRARY_PATH
    ENV LIBRARY_PATH
    PATH_SUFFIXES QGLViewer QGLViewer/release
    )
    find_library(QGLVIEWER_LIBRARY_DEBUG
    #NAMES dqglviewer dQGLViewer dQGLViewer2 QGLViewerd2
    NAMES dqglviewer dQGLViewer dQGLViewer QGLViewerd2
    PATHS /usr/lib
    /usr/local/lib
    /opt/local/lib
    /usr/lib/x86_64-linux-gnu
    /sw/lib
    ENV QGLVIEWERROOT
    ENV LD_LIBRARY_PATH
    ENV LIBRARY_PATH
    #PATH_SUFFIXES QGLViewer QGLViewer/release
    PATH_SUFFIXES QGLViewer QGLViewer/debug
    )
  • 5 返回g2o/build ,执行
    cmake ..
    make -j4
    make install
  • 6 运行g2o_viewer 便成功了

工作环境:ubuntu16.04

关于RGBDSLAMV2学习、安装、调试过程的更多相关文章

  1. RHEL6安装调试过程中遇到的问题集

    /*** **问题集 2014/6/9 20:55:52** **Autor: Weigong Xu ** ***/ 1. Linux中开启22port: 22port是ssh服务的.你仅仅要启动ss ...

  2. tensorflow学习笔记一:安装调试

    用过一段时间的caffe后,对caffe有两点感受:1.速度确实快; 2. 太不灵活了. 深度学习技术一直在发展,但是caffe的更新跟不上进度,也许是维护团队的关系:CAFFE团队成员都是业余时间在 ...

  3. cocos2d-js 学习笔记 --安装调试(2)

    对于初学者安装cocos2d-js的环境并没有教程中说的那么简单,至少笔者是这么认为的 第一步,下载cocos2d-js的SDK,(先别着急运行) 第二步,安装Cocos2d console ,(Ma ...

  4. (二)我的Makefile学习冲动&&编译过程概述

    前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 ...

  5. 关于火狐浏览器在开发调试过程中,出现javascript:void(0)的状态

    关于火狐浏览器在开发调试过程中,出现javascript:void(0)的状态 由于火狐浏览器没有安装 Adobe Flash Player 19 NPAPI这个插件 安装好了之后就可以直接运行了

  6. VMware Tools (ubuntu系统)安装详细过程与使用

    前一段时间博主在VMware虚拟机上安装了Ubuntu系统,如果还没有安装的同学可以参考博主上一篇文章:VMware Ubuntu安装详细过程. 猿友们都知道linux不太好用,如果你想将你主机Win ...

  7. FFmpeg在Linux下安装编译过程

    转载请把头部出处链接和尾部二维码一起转载,本文出自:http://blog.csdn.net/hejjunlin/article/details/52402759 今天介绍下FFmpeg在Linux下 ...

  8. 转 利用 Console 来学习、调试JavaScript

    利用 Console 来学习.调试JavaScript   一  什么是 Console Console 是用于显示 JS和 DOM 对象信息的单独窗口.并且向 JS 中注入1个 console 对象 ...

  9. S3C6410裸奔之旅——RVDS2.2编译、仿真、调试过程 LED流水灯---转的

    S3C6410裸奔之旅——RVDS2.2编译.仿真.调试过程 LED流水灯 (2012-10-13 23:56:30) 转载▼ 标签: s3c6410裸奔 ok6410 rvds2.2 rvds2.2 ...

随机推荐

  1. 转 Shell判断字符串包含关系的几种方法

    https://blog.csdn.net/rznice/article/details/71086839 Shell中判断字符串包含关系的方法: 1.通过grep来判断:12str1="a ...

  2. 取消Windows server 2008关机提示备注的方法

    打开“开始”-“运行”,在“打开”一栏中输入“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,双击右侧窗口出现的“显示‘关闭事件跟踪程序’”,将“未配置”改 ...

  3. shell request failed on channel 0

    今天普通用户ssh 登录提示shell request failed on channel 0 然后就退出了 幸亏root 用户没有被禁用,在root下 su - 普通 切换提示资源不足 解决方法  ...

  4. MySQL之表约束

    MySQL表约束 约束是一种限制,它通过对表的行或者列的数据做出限制,来确保表数据的完整性和唯一性. 在mysql当中一般有一下这几种约束: 非空约束. 唯一约束. 主键约束. 自增长. 默认约束. ...

  5. POJ 1941 The Sierpinski Fractal

    总时间限制: 1000ms 内存限制: 65536kB 描述 Consider a regular triangular area, divide it into four equal triangl ...

  6. Python Tkinter 窗口创建与布局

    做界面,首先需要创建一个窗口,Python Tkinter创建窗口很简单:(注意,Tkinter的包名因Python的版本不同存在差异,有两种:Tkinter和tkinter,读者若发现程序不能运行, ...

  7. vuex 的基本使用

    工程目录 主要关注store 文件夹下的文件 store/index.js import Vue from 'vue' import Vuex from 'vuex' // import getter ...

  8. c++ std::cout重定向到文件

    cout默认是与监视器(屏幕)相连,cout出来的内容会输出到屏幕上,通常是会在命令行窗口之中.但有时,我们希望将cout出来的具体日志.错误信息写到某个文件之中,而屏幕上仅仅显示出当前进行的任务,以 ...

  9. 如何创建Kafka客户端:Avro Producer和Consumer Client

    1.目标 - Kafka客户端 在本文的Kafka客户端中,我们将学习如何使用Kafka API 创建Apache Kafka客户端.有几种方法可以创建Kafka客户端,例如最多一次,至少一次,以及一 ...

  10. linux根据进程名终止进程

    2017年09月25日 19:44:32 aladdin_sun 阅读数 5235   linux根据进程名终止进程 实验环境 操作系统:CentOS Linux release 7.3.1611 ( ...