【SLAM】安装 g2o_viewer
2017年2月8日,那是一个阴天。为了完成高翔博士的《一起做RGB-D SLAM》教程,我在 Ubuntu 14.04 安装 g2o。遇到困难,怎奈我眼瞎,找错了方向,浪费时间,没有成功安装。
问题如下(跳到最后一个问题描述,直接正常安装):
g2o_viewer 没有被安装
这个大多是因为没有安装libqglviewer-dev(在 Ubuntu 12.04 上这东西叫libqglviewer-qt4-dev)。
先安装libqglviewer-dev,再编译、安装 g2o。
g2o_viewer 无法链接到 libqglviewer.so
安装成功 g2o_viewer之后,运行 g2o_viewer 会出现链接动态库失败的错误。
经查找,可以在/usr/local/lib 中找到 libqglviewer.so 文件。错误的原因是/usr/local/lib不在系统查找.so文件的路径下。需自行添加路径。
在/etc/ld.so.conf文件中添加/usr/local/lib目录,然后更新缓存sudo ldconfig。
在 Windows 下动态链接库.dll是放置在$PATH指明的目录下,或者直接与可执行文件.exe放置在同一目录下,而在 Linux 中动态链接库.so没有被当做是可执行文件放置在可执行文件应该放置的地方。
g2o_viewer 运行 Segmentation fault
运行 g2o_viewer 会报错Segmentation fault (core dumped),Google 找了很多都没有解决问题。最后还是回到 Github 这个 repo 的 issues 才找到答案。
链接 https://github.com/RainerKuemmerle/g2o/issues/151 中说了是因为在 Ubuntu 14.04 下使用的是 Qt4,而当前的 g2o 版本使用的是 Qt5,所以 g2o_viewer 链接了 Qt 两个版本的动态链接库。
所以解决方案是找到原来使用 Qt4 的 g2o 源码进行编译安装。
看链接 https://github.com/RainerKuemmerle/g2o/commits/master 知道在2017年1月13日有一个 commit 是“Switch to Qt5”,所以 git checkout 到之前版本就可以直接正常编译安装。
【SLAM】安装 g2o_viewer的更多相关文章
- CMake Tutorial & Example
Tutorial CMakeLists用于告诉CMake我们要对这个目录下的文件做什么事情 cmake 的特点主要有: 1,开放源代码,使用类 BSD 许可发布.http://cmake.org/HT ...
- SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——1.安装系统ubuntu_mate_16.04
摘要 通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识.接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发.本章将从树莓派3的开发环境搭建入手,为后续ros开 ...
- SLAM+语音机器人DIY系列:(一)Linux基础——2.安装Linux发行版ubuntu系统
摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...
- SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic
摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...
- 视觉slam十四讲开源库安装教程
目录 前言 1.Eigen线性代数库的安装 2.Sophus李代数库的安装 3.OpenCV计算机视觉库的安装 4.PCL点云库的安装 5.Ceres非线性优化库的安装 6.G2O图优化库的安装 7. ...
- ubuntu16.04+Opencv3.4.0安装(slam版)
本文记录ubuntu下安装opencv过程,步骤来自 opencv官网可以对照官网步骤:https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_inst ...
- Ubuntu16.04安装视觉SLAM环境(DBow3)
1.从Github上现在DBow3词袋模型库 git clone https://github.com/rmsalinas/DBow3.git 2.开始安装DBow3库,进入DBow3目录 mkdir ...
- Ubuntu16.04安装视觉SLAM环境(OpenCV)
一.安装依赖库 sudo apt-get install build-essential sudo apt--dev pkg-config libavcodec-dev libavformat-dev ...
- Ubuntu16.04安装视觉SLAM环境(g2o)
1.首先在github上下载g2o图优化库 git clone https://github.com/RainerKuemmerle/g2o.git 2.运行安装以下依赖库 sudo apt-get ...
随机推荐
- L2 L3 L4
第二层交换机,是根据第二层数据链路层的MAC地址和通过站表选择路由来完成端到端的数据交换的.因为站表的建立与维护是由交换机自动完成,而路由器又是属于第三层设备,其寻址过程是根据IP地址寻址和通过路由表 ...
- CSS3 Selectors All In One
CSS3 Selectors All In One https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors https://www ...
- Nastya Studies Informatics CodeForces - 992B(增长姿势)
有增长姿势了 如果a * b == lcm * gcd 那么a和b为lcm因数 这个我之前真不知道emm... #include <bits/stdc++.h> #define mem( ...
- c++11 类默认函数的控制:"=default" 和 "=delete"函数
c++11 类默认函数的控制:"=default" 和 "=delete"函数 #define _CRT_SECURE_NO_WARNINGS #include ...
- R2学习记录
Setting up the Libevent library1.重写log行为 #include <event2/event.h> #include <stdio.h> st ...
- JUnit中按照顺序执行测试方式
很多情况下,写了一堆的test case,希望某一些test case必须在某个test case之后执行.比如,测试某一个Dao代码,希望添加的case在最前面,然后是修改或者查询,最后才是删除,以 ...
- Android 65535 问题与 MultiDex分包
Android Multidex 遇到的问题 http://blog.csdn.net/wangbaochu/article/details/51178881 Android 使用android-su ...
- Docker多主机网络 OpenvSwitch
一.Open vSwitch Open vSwitch(以下简称为OVS),英文全称:OpenVirtual Switch,顾名思义,Open vSwitch就是开放虚拟交换.我们可以把他理解成 ...
- Docker入门与应用系列(二)镜像管理
1.1 什么是镜像 简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统. 1.2 镜像从哪里来 Docker Hub是由Docker公司负责维护的公共注册中心,包含大量的容 ...
- python3中SSLError错误处理
在deepin中安装了python3.6,安装路径为/usr/local/python36,然后通过deepin自带的python2.7的pip安装了virtualenv: sudo pip inst ...