安装Ceres与glog

系列文章目录

安装UBUNTU系统与ROS Noetic:https://blog.csdn.net/weixin_70411664/article/details/157024148?fromshare=blogdetail&sharetype=blogdetail&sharerId=157024148&sharerefer=PC&sharesource=weixin_70411664&sharefrom=from_link

安装 RealSense SDK (驱动层):https://blog.csdn.net/weixin_70411664/article/details/157033528?fromshare=blogdetail&sharetype=blogdetail&sharerId=157033528&sharerefer=PC&sharesource=weixin_70411664&sharefrom=from_link

安装mavros:https://blog.csdn.net/weixin_70411664/article/details/157132147?fromshare=blogdetail&sharetype=blogdetail&sharerId=157132147&sharerefer=PC&sharesource=weixin_70411664&sharefrom=from_link


文章目录

前言

[一、安装 Glog 和必要依赖(用 apt)](#一、安装 Glog 和必要依赖(用 apt))

[二、下载并编译 Ceres 1.14.0(关键!)](#二、下载并编译 Ceres 1.14.0(关键!))

[💡 发生了什么?](#💡 发生了什么?)

[✅ 解决方法:使用国内加速镜像](#✅ 解决方法:使用国内加速镜像)

接下来别忘了(关键步骤):

三、验证安装

总结


前言

在无人机开发(特别是涉及 VINS、Ego-Planner 等高阶算法)时,安装 Ceres Solverglog 是为了搭建两个最基础的地基:一个是"数学计算核心",一个是"黑匣子记录员"。

简单来说:Ceres 负责让飞机飞得顺滑、算得准;glog 负责在出问题时告诉你原因。


提示:以下是本篇文章正文内容,下面案例可供参考

一、安装 Glog 和必要依赖(用 apt)

这一步会自动安装 Glog、Gflags 以及 Ceres 编译所需要的数学库。

bash 复制代码
sudo apt update
sudo apt install libgoogle-glog-dev libgflags-dev libatlas-base-dev libsuitesparse-dev

二、下载并编译 Ceres 1.14.0(关键!)

请逐行复制下面的命令,不要跳过。这一步是为了把"Ceres 1.14.0"这颗定心丸装进你的系统。

  1. 下载源码
bash 复制代码
cd ~
git clone https://github.com/ceres-solver/ceres-solver.git

注:如果出现如下错误,说明你还没有安装 Git 这个工具。 Git 就像是一个"搬运工",专门负责把 GitHub 上的代码搬运到你的电脑里。没有它,电脑就听不懂 git clone 是什么意思。

需要输入以下代码:

bash 复制代码
sudo apt install git

在重新执行git clone https://github.com/ceres-solver/ceres-solver.git

如果出现如下错误:

这又是一个非常经典的"国情"问题!😂

请看截图里红色的那行字: Failed to connect to github.com port 443: Connection timed out (中文意思:连接 GitHub 端口 443 超时)

💡 发生了什么?

恭喜你,你的 git 软件已经安装成功了(所以之前的报错解决了)。 但是,现在是网络问题 。GitHub 的服务器在国外,国内访问经常不稳定,容易被"墙"或者慢到断连。这不是你电脑的问题,是网络环境的问题。

✅ 解决方法:使用国内加速镜像

既然"正门"进不去,我们就走"后门"。我们可以使用国内的镜像网站来下载,速度会飞快。

直接复制下面这行"魔改版"的命令,代替原来那行:

bash 复制代码
# 使用 gitclone.com 加速镜像下载
git clone https://gitclone.com/github.com/ceres-solver/ceres-solver.git


2. 切换到 1.14.0 版本

接下来别忘了(关键步骤):

下载成功后,记得一定要切换到 1.14.0 版本(这也是很多新手下载完高兴太早忘记做的一步):

bash 复制代码
# 1. 进入文件夹
cd ceres-solver

# 2. 切换版本
git checkout 1.14.0


3. 准备编译环境

bash 复制代码
mkdir build
cd build
cmake ..

(注意:执行完 cmake .. 后,最后几行不应该报错。如果看到 "Configuring done" 和 "Generating done",就是成功的)


4. 开始编译(可能需要 5-10 分钟)

bash 复制代码
make -j4
#或make -j8

注:"make -j4"与"make -j8"有什么区别?

  • 如果选 -j8 (火力全开)

    • 优点:能榨干你 CPU 的全部性能,编译速度最快。

    • 风险 :C++ 编译非常消耗内存。如果你的 NUC 只有 8G 内存,用 -j8 编译 Ceres 可能会瞬间把内存吃光,导致鼠标动不了,甚至系统崩溃。

    • 适用场景:你赶时间,且你的内存有 16G 以上。

  • 如果选 -j4 (推荐,稳如老狗)

    • 优点:只用一半的力气,留出一半资源给系统。你可以一边编译,一边看网页、写代码,电脑完全不卡。

    • 缺点 :比 -j8 慢那么一两分钟。

    • 适用场景:为了保险起见,或者你的内存比较小。

bash 复制代码
#安装系统
sudo make install

三、验证安装

怎么知道装没装好?我们去看看文件在不在。

bash 复制代码
ls /usr/local/include/ceres/

成功的标志: 如果你看到输出里包含 ceres.hjet.hautodiff_cost_function.h 等一堆文件,恭喜你!环境配置最难的一关你已经过了! 🎉


总结

你现在的安装操作,实际上是在为无人机的大脑配置两个关键技能:

  1. 安装 glog = 给大脑装个"监控器",方便以后查错。

  2. 安装 Ceres = 给大脑装个"数学加速卡",让它能算出最优的飞行轨迹。

这两个装好了,后面的 Ego-Planner 才能编译通过并跑起来!

相关推荐
深紫色的三北六号19 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI1 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
崔小汤呀3 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应3 天前
vi编辑器使用
linux·后端·操作系统
何中应3 天前
Linux进程无法被kill
linux·后端·操作系统
何中应3 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应3 天前
Linux常用命令
linux·操作系统