Pangolin是对OpenGL进行封装的轻量级的OpenGL输入/输出和视频显示的库。可以用于3D视觉和3D导航的视觉图,可以输入各种类型的视频、并且可以保留视频和输入数据用于debug.

可以在https://github.com/stevenlovegrove/Pangolin上下载Pangolin,终端使用如下的指令也OK:

git clone https://github.com/stevenlovegrove/Pangolin.git

在安装编译Pangolin之前还需要安装相关的依赖库文件;

ubuntu环境下主要是OpenGL,ubuntu系统可以使用如下方式安装Pangolin:

* install dependency for pangolin (mainly the OpenGL):
sudo apt-get install libglew-dev* compile and install pangolin
cd [path-to-pangolin]
mkdir build
cd build
cmake ..
make
sudo make install

然而对于centos系统,相应的库文件是什么呢??

搜寻网上很多教程,centos下对应的依赖分别是:

freeglut (相应官网 )

选择对应系统版本的安装文件,例如我的是centos7,选择如下:

最快的终端指令安装方式为:

yum install freeglut

或者,将安装包下载下来安装,

到下载的目录下运行指令安装:

sudo rpm -ih freeglut-3.0.0-8.el7.x86_64.rpm 

libGLEW (相应 官网)

选择对应系统版本的安装文件,例如我的是cetos7,选择如下:

可以在终端用指令下载与安装:

yum install libGLEW

或者到下载的目录下运行指令安装:

sudo rpm -ih libGLEW-1.10.0-5.el7.x86_64.rpm

libglew-dev (相应官网)

这个库目前我只看到有centos6的,没有高版本的,不知道是否对centos7支持,先下载下来试试(以下证明果然行不通!!!);

可以直接用指令下载安装,不过官网指出需要先创建个文件/etc/yum.repos.d/linuxtech.repo;其内容如下:

[linuxtech]
name=LinuxTECH
baseurl=http://pkgrepo.linuxtech.net/el6/release/
enabled=1
gpgcheck=1
gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET

然后运行指令:

yum install libglew-devel

或者将安装文件下载下来,我下的是libglew-devel-1.7.0-1.el6.x86_64.rpm

然后用如下指令安装:

sudo rpm -ih libglew-devel-1.7.0-1.el6.x86_64.rpm

提示缺少依赖库文件,如下:

然后我Google了下,发现这个其实有centos7版本的,地址https://pkges.org/download/glew-devel

地址应该为:https://pkgs.org/download/glew-devel  多谢读者纠正!

选择centos7的下载,文件名为:glew-devel-1.10.0-5.el7.x86_64.rpm

然后用如下指令安装:

sudo rpm -ih glew-devel-1.10.0-5.el7.x86_64.rpm

安装成功(万恶的资源受限,只能FQ)


现在cd 到Pangolin下载的解压目录下,

创建个build, cd到这个build中,然后cmake ..下

[chensq@localhost build]$ cmake ..
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Check for working C compiler: /bin/cc
-- Check for working C compiler: /bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /bin/c++
-- Check for working CXX compiler: /bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
Build type not set (defaults to release)
-DCMAKE_BUILD_TYPE=Debug for debug
-- Found OpenGL: /usr/lib64/libGL.so
-- Found GLEW: /usr/lib64/libGLEW.so
-- Found PkgConfig: /usr/local/bin/pkg-config (found version "0.29")
-- Could NOT find WAYLAND_CLIENT (missing: WAYLAND_CLIENT_LIBRARIES WAYLAND_CLIENT_INCLUDE_DIR)
-- Could NOT find WAYLAND_SERVER (missing: WAYLAND_SERVER_LIBRARIES WAYLAND_SERVER_INCLUDE_DIR)
-- Could NOT find WAYLAND_EGL (missing: WAYLAND_EGL_LIBRARIES WAYLAND_EGL_INCLUDE_DIR)
-- Could NOT find WAYLAND_CURSOR (missing: WAYLAND_CURSOR_LIBRARIES WAYLAND_CURSOR_INCLUDE_DIR)
-- Could NOT find WAYLAND (missing: WAYLAND_LIBRARIES WAYLAND_INCLUDE_DIR)
-- Eigen Found and Enabled
-- libdc1394 Found and Enabled
-- V4L Found and Enabled
-- Performing Test HAVE_FFMPEG_MAX_ANALYZE_DURATION
-- Performing Test HAVE_FFMPEG_MAX_ANALYZE_DURATION - Failed
-- Performing Test HAVE_FFMPEG_AVFORMAT_ALLOC_OUTPUT_CONTEXT2
-- Performing Test HAVE_FFMPEG_AVFORMAT_ALLOC_OUTPUT_CONTEXT2 - Failed
-- Performing Test HAVE_FFMPEG_AVPIXELFORMAT
-- Performing Test HAVE_FFMPEG_AVPIXELFORMAT - Success
-- ffmpeg Found and Enabled
-- libpng Found and Enabled
-- libjpeg Found and Enabled
-- libtiff Found and Enabled

然后 make

如果make时到了23% 就报了一大堆错误的话,建议换个Pangolin的源进行安装,有博主反应最新的源有些问题,如果你make没有成功,目前换源有两个解决方法:

其中一个源还是stevenlovegrove的,不过下载个老版本的,选择0.5,如下图:

还有一个源是,git clone https://github.com/zzx2GH/Pangolin.git  (参考博客https://blog.csdn.net/zzu_seu/article/details/84866858 )

基于换源后,

如果make中出现如下错误:

/bin/ld: /usr/local/lib/libpython3.6m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC

错误信息非常明白,就是无法生成动态库,需要使用 -fPIC 参数来重新编译 Python。有博主就重新编译安装了下(参考);

其实我用的python默认是从anaconda3/bin下的python进去的,而linux系统自带的2.7版本的python在usr/bin/python下

就是说在make过程中没有找到libpython3.6m.a,有博客说直接找到这个文件,然后拷贝到/usr/lib/,/usr/lib64/, /usr/local/lib64/,(参考:未加载到libpython3.5m.so.1.0的解决办法, 未加载libpython3.6m.so.1.0的办法)这个方法我还没尝试,应该可行~

我的方法是以下载个python3.6.5的安装源文件,然后,解压,进入解压文件,按照以下指令安装了下:

./configure --prefix=/usr/local/python3  --enable-shared CFLAGS=-fPICmake && sudo make install

源文件在/home/chensq/Downloads/Python-3.6.5 这个目录下,这个目录下有相应的动态库和python执行文件;

那么索性在cmake Pangolin的时候,将python强行指定到这个路径就行~

##切到Pangolin目录下
cd /home/chensq/Downloads/slambook2-master/3rdparty/Pangolin-0.5   ##将原来的build文件夹删除,重新cmake
rm -rf build
mkdir build
cd build##强行指定python的路径
cmake -D PYTHON_EXECUTABLE=/home/chensq/Downloads/Python-3.6.5/ ..##然后make 就成功了~
make
sudo make install


参考:

https://blog.csdn.net/qq_32627687/article/details/81105706

https://www.cnblogs.com/laodageblog/p/5993742.html

https://blog.csdn.net/qq_29230261/article/details/87875630

centos下Pangolin 安装与使用相关推荐

  1. mysql linux centos 安装_Linux centos 下在线安装mysql

    1,查看是否有安装过mysql: #rpm -qa | grep mysql 如果无结果返回,说明没有安装Mysql,可以全新安装. 2,查看在线服务器提供的Mysql相关的安装包有哪些: #yum ...

  2. Centos下Yum安装PHP5.5,5.6

    Centos下Yum安装PHP5.5,5.6 默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | gre ...

  3. linux怎么离线安装gcc文件夹,CentOS下离线安装gcc环境,图文详细,方法全面

    CentOS下离线安装gcc环境,图文详细,方法全面 下载 方式1:如果有网的虚拟机还没有安装,可以直接 yum install --downloadonly --downloaddir=/root/ ...

  4. Mongodb学习(安装篇): 在centos下的安装

    安装篇 ###下载解压文件 [root@192 lamp]# wget http://fastdl.mongodb.org/linux/mongodb-linux-i686- 2.2.2.tgz ## ...

  5. nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务

    centos 下编译安装nginx + mysql + php 服务 1.安装nginx 1.1.安装依赖包 yum install wget make gcc gcc-c++ pcre-devel ...

  6. CentOS下MySQL安装后配置和设置

    CentOS下MySQL安装后配置和设置: 1:安装完成路径: 1.数据库目录/var/lib/mysql/2.配置文件/usr/share/mysql(mysql.server命令及配置文件)3.启 ...

  7. cent mysql 配置,centos下MySQL安装配置

    centos下MySQL安装配置 下载 https://dev.mysql.com/downloads/mysql/下载Linux-Generic版本 uname -a查看系统架构, 选择相应版本. ...

  8. CentOS下Qt安装

    CentOS下Qt安装 月底,美国的大佬们将会过来给我们几个搞一个培训.老大要求我们提前学习一下Qt.我现在的首要任务是在自己的CentOS系统上安装一下Qt开发环境. 1. 获取下载地址 以下为开源 ...

  9. 【潇湘菌子】Centos下YAPI安装

    Centos下YAPI安装 YAPI是什么 这个也无需多讲,是一个管理api的平台,大家在平台把规则定好.前后端就可以分离的做开发了.比sawgger的那个功能强大.而且支持用户,权限,多种数据导入, ...

最新文章

  1. 在CentOS 6.9 x86_64的nginx 1.12.2上开启echo-nginx-module模块实录
  2. 简单总结一下 XSS
  3. Android Studio 受不了了
  4. 红盟php 解密,php教程_神盾加密解密教程(一)PHP变量可用字符
  5. 复制文件时怎么保留权限
  6. Flume 1.7 源码分析(四)从Source写数据到Channel
  7. 仿照vue实现简易的MVVM框架(一)
  8. 用指针完成函数参数的调用
  9. 机器学习实践二 -多分类和神经网络
  10. MFC工作笔记0010---PeekMessage 详解
  11. 做生意、做营销常犯的10个错误和对策
  12. 超标量体系结构_计算机体系结构——以多发射和静态调度来开发ILP
  13. 淘宝京东天猫电商运营每天都需要做什么?
  14. (短除法)求两个给定正整数的最大公约数和最小公倍数。
  15. 由sizeof 这个“管”,窥一窥C语言这只“豹”
  16. 互联网公司测试组长/leader/经理如何面试社招测试工程师
  17. python3 scrapy 教程_Scrapy 入门教程
  18. postgresql设置自动更新时间方法
  19. c语入门,心得和自我反省
  20. [ctfhub.pwn] 第12-14题

热门文章

  1. 鸿蒙安卓双系统手机,华为P50再次确认!鸿蒙/安卓双系统版本加持:或成绝版旗舰机...
  2. 如何解决电脑缺失dll文件
  3. html 图片 滤镜,如何使用CSS实现图像滤镜效果?
  4. 倍福--记录报警事件
  5. android4.0.3源码之硬件gps简单移植
  6. 淘宝运营:淘宝指数中隐藏的店铺运营秘籍--数据分析实战应用
  7. 第一本 ECharts 数据可视化书籍出版了!
  8. Win32中BeginPaint和GetDC的使用
  9. 战地2042 战地 6 建议 介入 流程
  10. 滑模控制理论(SMC)概述