Ceres库安装

一、安装依赖

zhangman@zhangman-G3-3579:~$ sudo apt-get install  liblapack-dev libsuitesparse-dev libcxsparse3 libgflags-dev libgoogle-glog-dev libgtest-dev

二、下载Ceres包

https://github.com/ceres-solver/ceres-solver/tree/e51e9b46f6ca88ab8b2266d0e362771db6d98067

三、编译安装

解压后进入ceres目录下,打开终端:

zhangman@zhangman-G3-3579:~/ceres$ mkdir build
zhangman@zhangman-G3-3579:~/ceres$ cd build
zhangman@zhangman-G3-3579:~/ceres/build$ cmake ..
zhangman@zhangman-G3-3579:~/ceres/build$ make
zhangman@zhangman-G3-3579:~/ceres/build$ sudo make install

G2O库安装

一、安装依赖

zhangman@zhangman-G3-3579:~$ sudo apt-get install qt5-qmake qt5-default libqglviewer-dev-qt5 libsuitesparse-dev libcxsparse3 libcholmod3

二、下载G2O包

https://github.com/RainerKuemmerle/g2o/tree/9b41a4ea5ade8e1250b9c1b279f3a9c098811b5a

三、编译安装

解压后进入g2o目录下,打开终端:

zhangman@zhangman-G3-3579:~/ceres$ mkdir build
zhangman@zhangman-G3-3579:~/ceres$ cd build
zhangman@zhangman-G3-3579:~/ceres/build$ cmake ..
zhangman@zhangman-G3-3579:~/ceres/build$ make
zhangman@zhangman-G3-3579:~/ceres/build$ sudo make install

四、指定系统G2O库

如果系统里面已经安装了ROS,ROS会自带一个G2O库,为了使用自己安装的G2O库。需要在工程目录下添加一个cmake文件夹,文件夹中存放FindG2O.cmake文件。
FindG2O.cmake文件如下:

FIND_PATH(G2O_INCLUDE_DIR g2o/core/base_vertex.h${G2O_ROOT}/include$ENV{G2O_ROOT}/include$ENV{G2O_ROOT}/usr/local/include/usr/include/opt/local/include/sw/local/include/sw/includeNO_DEFAULT_PATH)# Macro to unify finding both the debug and release versions of the
# libraries; this is adapted from the OpenSceneGraph FIND_LIBRARY
# macro.MACRO(FIND_G2O_LIBRARY MYLIBRARY MYLIBRARYNAME)FIND_LIBRARY("${MYLIBRARY}_DEBUG"NAMES "g2o_${MYLIBRARYNAME}_d"PATHS${G2O_ROOT}/lib/Debug${G2O_ROOT}/lib$ENV{G2O_ROOT}/lib/Debug$ENV{G2O_ROOT}/libNO_DEFAULT_PATH)FIND_LIBRARY("${MYLIBRARY}_DEBUG"NAMES "g2o_${MYLIBRARYNAME}_d"PATHS~/Library/Frameworks/Library/Frameworks/usr/local/lib/usr/local/lib64/usr/lib/usr/lib64/opt/local/lib/sw/local/lib/sw/libNO_DEFAULT_PATH)FIND_LIBRARY(${MYLIBRARY}NAMES "g2o_${MYLIBRARYNAME}"PATHS${G2O_ROOT}/lib/Release${G2O_ROOT}/lib$ENV{G2O_ROOT}/lib/Release$ENV{G2O_ROOT}/libNO_DEFAULT_PATH)FIND_LIBRARY(${MYLIBRARY}NAMES "g2o_${MYLIBRARYNAME}"PATHS~/Library/Frameworks/Library/Frameworks/usr/local/lib/usr/local/lib64/usr/lib/usr/lib64/opt/local/lib/sw/local/lib/sw/libNO_DEFAULT_PATH)IF(NOT ${MYLIBRARY}_DEBUG)IF(MYLIBRARY)SET(${MYLIBRARY}_DEBUG ${MYLIBRARY})ENDIF(MYLIBRARY)ENDIF( NOT ${MYLIBRARY}_DEBUG)ENDMACRO(FIND_G2O_LIBRARY LIBRARY LIBRARYNAME)# Find the core elements
FIND_G2O_LIBRARY(G2O_STUFF_LIBRARY stuff)
FIND_G2O_LIBRARY(G2O_CORE_LIBRARY core)# Find the CLI library
FIND_G2O_LIBRARY(G2O_CLI_LIBRARY cli)# Find the pluggable solvers
FIND_G2O_LIBRARY(G2O_SOLVER_CHOLMOD solver_cholmod)
FIND_G2O_LIBRARY(G2O_SOLVER_CSPARSE solver_csparse)
FIND_G2O_LIBRARY(G2O_SOLVER_CSPARSE_EXTENSION csparse_extension)
FIND_G2O_LIBRARY(G2O_SOLVER_DENSE solver_dense)
FIND_G2O_LIBRARY(G2O_SOLVER_PCG solver_pcg)
FIND_G2O_LIBRARY(G2O_SOLVER_SLAM2D_LINEAR solver_slam2d_linear)
FIND_G2O_LIBRARY(G2O_SOLVER_STRUCTURE_ONLY solver_structure_only)
FIND_G2O_LIBRARY(G2O_SOLVER_EIGEN solver_eigen)# Find the predefined types
FIND_G2O_LIBRARY(G2O_TYPES_DATA types_data)
FIND_G2O_LIBRARY(G2O_TYPES_ICP types_icp)
FIND_G2O_LIBRARY(G2O_TYPES_SBA types_sba)
FIND_G2O_LIBRARY(G2O_TYPES_SCLAM2D types_sclam2d)
FIND_G2O_LIBRARY(G2O_TYPES_SIM3 types_sim3)
FIND_G2O_LIBRARY(G2O_TYPES_SLAM2D types_slam2d)
FIND_G2O_LIBRARY(G2O_TYPES_SLAM3D types_slam3d)# G2O solvers declared found if we found at least one solver
SET(G2O_SOLVERS_FOUND "NO")
IF(G2O_SOLVER_CHOLMOD OR G2O_SOLVER_CSPARSE OR G2O_SOLVER_DENSE OR G2O_SOLVER_PCG OR G2O_SOLVER_SLAM2D_LINEAR OR G2O_SOLVER_STRUCTURE_ONLY OR G2O_SOLVER_EIGEN)SET(G2O_SOLVERS_FOUND "YES")
ENDIF(G2O_SOLVER_CHOLMOD OR G2O_SOLVER_CSPARSE OR G2O_SOLVER_DENSE OR G2O_SOLVER_PCG OR G2O_SOLVER_SLAM2D_LINEAR OR G2O_SOLVER_STRUCTURE_ONLY OR G2O_SOLVER_EIGEN)# G2O itself declared found if we found the core libraries and at least one solver
SET(G2O_FOUND "NO")
IF(G2O_STUFF_LIBRARY AND G2O_CORE_LIBRARY AND G2O_INCLUDE_DIR AND G2O_SOLVERS_FOUND)SET(G2O_FOUND "YES")
ENDIF(G2O_STUFF_LIBRARY AND G2O_CORE_LIBRARY AND G2O_INCLUDE_DIR AND G2O_SOLVERS_FOUND)

然后在使用时,需要在CMakeLists文件中添加:

list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)

Ubuntu18.04安装Ceres库和G20库相关推荐

  1. ubuntu18.04 安装ceres,g2o,以及cmake升级

    背景:在进行slam开发时,需要的一些包 一.ceres安装 1. 下载Ceres 方法一:直接下载 下载链接:https://github.com/ceres-solver/ceres-solver ...

  2. windox与ubuntu18.04安装clion及导入qt库

    windox: http://download.qt.io/archive/qt/ 1. qt安装目录 F:\qt 1.1  qt库所在目录: 针对第一种导入库文件的方法 CMakeLists.txt ...

  3. ubuntu18.04安装pcl库

    参考Ubuntu18.04安装PCL 1.9.1(图文详解,附踩坑和测试)_ubuntu安装pcl_振华OPPO的博客-CSDN博客 遇到的问题 1 安装依赖时软件未满足依赖关系 sudo apt-g ...

  4. Ubuntu18.04安装fcl库

    Ubuntu18.04安装fcl库 首先fcl库需要两个必要的库Eigen(矩阵运算库)和libccd(检测碰撞库),还有一个可选库octomap. 安装fcl git clone https://g ...

  5. Ubuntu18.04安装facebook folly库

    安装步骤 安装boost ubuntu18.04安装的boost有点陈旧,因此自行下载最新版本,执行安装即可:https://www.boost.org/ 具体步骤直接参考readme 安装gtest ...

  6. Ubuntu18.04安装Dlib-19.19.0成功

    VMware内Ubuntu18.04安装Dlib-19.19.0成功 本人第一篇博客,如果哪里写的不好还请多多包涵. 说明一下,我是通过pip去安装的所有库,除了Cmake.因为Dlib需要C++环境 ...

  7. ubuntu18.04 安装qt5.12.8及环境配置的详细教程

    这篇文章主要介绍了ubuntu18.04 安装qt5.12.8及环境配置的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 环境 系统: ...

  8. Ubuntu18.04安装cuDNN和Tensorflow的正确姿势

    文章目录 Ubuntu18.04安装cuDNN和Tensorflow的正确姿势 一.检查NVIDIA驱动是否安装成功 二.检查CUDA是否安装成功 三.安装cuDNN 1. 确定版本 2. 下载安装包 ...

  9. Ubuntu18.04安装CUDA10.1和cuDNN v7.6.5

    Ubuntu18.04安装CUDA10.1和cuDNN v7.6.5 前言 深度学习需要使用使用GPU加速,在安装tensorflow之前需要根据选用的版本安装 就我的经验而言,CUDA的安装在Lin ...

最新文章

  1. 大佬带你深入浅出Lua虚拟机
  2. 皮一皮:工作再忙,也记得陪陪孩子...
  3. 这样配置,让你的 IDEA 好用到飞起来!
  4. CSDN总结的面试中的十大可视化工具
  5. MVVM架构之自动增删改的极简RecycleView的实现
  6. fedora docker_如何在Fedora中授予用户使用Docker的权限
  7. OpenCV学习笔记04:在Visual Studio上使用OpenCV4.5.5
  8. 解密朋友圈红包照片功能
  9. ESP-Drone控制板设计的第二个任务-绘制USB-TTL串口下载电路和ESP32-S2芯片内置USB接口电路
  10. 江苏华罗庚中学2021高考成绩查询,2021年常州各高中高考成绩排名及放榜最新消息...
  11. Java程序设计基础——setSize()和setBounds()的区别
  12. 机器是如何学习的?(监督式学习)
  13. CommonJS模块化
  14. 艺赛旗(RPA) Python 科学计算:matplotlib (精华博文)
  15. 【JavaSE】JavaSE之控制逻辑
  16. Phonics 自然拼读法 S A T I P N Teacher:Lamb
  17. 【PhD Debate —11】矛与盾的对决——神经网络后门攻防
  18. AttributeError: ‘Embeddings‘ object has no attribute ‘d_model‘
  19. “译见”跨语言大数据渠道生态 上亿市场即将开启
  20. 【Miracl密码库】miracl密码库相关应用整理合集

热门文章

  1. 龙王传说古月_龙王传说最新话:真虐!古月疏远唐舞麟,却又忍不住偷瞄他
  2. Docker部署springboot项目的两种方法
  3. Linux内存管理(四):paging_init分析
  4. 别人Python都玩腻了,而你却连安装工具库都搞不清楚?
  5. 内存屏障与volatile(C语言版)
  6. SSDHDD混装换一块SSD(迁移系统与资料不重装)
  7. nodemcu刷鸿蒙系统,mac开发nodemcu, 通过terminal刷固件
  8. 2019年计算机考研大纲,2019年计算机考研大纲(原文).pdf
  9. 分享股票level2接口的量价趋势指标源码
  10. 如何制作可以缩小放大尺寸的软件ICO图标