linux笔记2-开发库与工具安装与更新

cmake

由于使用sudo apt install cmake安装的cmake版本是3.10.2比较老旧。ppa安装,推荐

  1. 添加签名密钥
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo apt-key add - 
  1. 将存储库添加到您的源列表并进行更新
sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' 

sudo apt-get update 
  1. 然后再使用apt安装就是最新版本的cmake啦
sudo apt install cmake

到此,ubuntu中cmake编译的三种方法就结束啦。

低版本cmake更新

  1. 打开cmake下载的官网:https://cmake.org/files/

这里我们选择最高的子版本,cmake-3.20.6-linux-x86_64.sh,点击进行下载。(最小的子版本号可以自行更改,我选的是当时最高的6,因为它大概率拥有最全的补丁)

  1. 升级命
cd Downloads
sudo bash cmake-3.20.6-inux-x86_64.sh --skip-licence --prefix=/usr
  1. 在弹出来的提示中,输入y/n(输入什么完全照我说的做!)
# 安装过程中遇到:
# 第一个选择时,输入y!!!
Do you accept the license? [yn]: 
# 输入 y

# 第二个选择时,输入n!!!
By default the CMake will be installed in:
  "/usr/cmake-3.23.0-linux-x86_64"
Do you want to include the subdirectory cmake-3.23.0-linux-x86_64?
Saying no will install in: "/usr" [Yn]:
# 输入 n
  1. 查看版本是否更新成功
cmake --version
# 提示cmake version 3.20.6

boost库

ROS noetic 解决boost_signals报错问题_cmake error at /usr/lib/x86_64-linux-gnu/cmake/boo_Jason.Li_0012的博客-CSDN博客

注意:先安装对应的boost再更新安装ros
ros2可以使用boost1.74-ubuntu22
ros-noetic使用boost1.75-buuntu20

编译安装

1.下载原码后使用 bootstrap.sh 来生产编译工具 b2

./bootstrap.sh --prefix=/usr/
注:其中“--prefix”是用来配置安装目录的:

2.如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。

3.如果配置了“--prefix”,如上“./bootstrap.sh --prefix=/usr/”安装后的所有资源文件都会被放在“/usr/”目录中,不会分散到其他问目录。

4.使用“--prefix”的另一个好处是方便卸载软件或移植软件当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载干净;移植软件只需拷答贝整个目录到另外一个机器即可.

5.运行b2

./b2
注:b2实际上是个支持 Boost.Jam语言的使用本地编译器自动化编译链接的跨平台编译工具

6.安装boost库

sudo ./b2 install
至此boost库安装完毕

查看boost库版本

dpkg -S /usr/include/boost/version.hpp

更新gcc使其能使用c++17

  1. 检查版本
gcc --version   #查看版本是否需要升级
  1. 添加源
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa
sudo apt-get update
  1. 查看添加的源里是否有对应你需要的版本
sudo apt search gcc-12
  1. 如果有需要的版,可以使用以下命令安装
sudo apt install gcc-12
sudo apt install g++-12
  1. sudo update-alternatives --install 切换系统 gcc/g++ 版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 60 --slave /usr/bin/g++ g++ /usr/bin/g++-12
  1. 相关说明
    Installing C++17 and C++20 on Ubuntu and Amazon Linux - Duccio Marco Gasparri

SDL

一、Ubuntu下SDL安装_sdl2 ubuntu_GBEDC的博客-CSDN博客

protobuf

protobuf 地址:https://github.com/protocolbuffers/protobuf.git
详细地址:ProtoBuf安装及避坑指南 - 知乎 (zhihu.com)
编译前如果需要安装在 Ubuntu 上安装 Bazel

 #查看protobuf版本如果3.6.1就需要更新protobuf版为最低为3.8
protoc --version 
#到protobuf下载指定版本protobuf
./configure    #不改路径
cmake check    #可能没有作用
make
make install
sudo ldconfig    #刷新动态库
protoc --version   #显示版本

安装前可能需要以下库

sudo apt-get install autoconf automake libtool curl make g++ unzip

卸载旧版protobuf

sudo apt-get remove libprotobuf-dev    #卸载旧板protobuf
which protoc    #运行完“which protoc”会显示一个protoc的路径,如果没有显示则下面这条命令不必执行
rm /usr/local/bin/protoc   #具体路径以“which protoc”显示的为准
#到此,低版本的protobuf卸载完成。

libyaml-cpp

ros2 version 0.7

mkdir build && cd build
cmake ..
make
sudo make install

log4cxx

sqlite3

sqlite3 version  #查看版本
sudo apt-get install sqlite sqlite3
sudo apt-get install libsqlite3-dev  #安装库+头文件,用代码操作数据库必须安装,否则调用头文件<sqlite3.h>可能会出错

openGL&openAL

sudo apt-get update
OpenGL: sudo apt-get install libglu1-mesa-dev freeglut3-dev mesa-common-dev 
OpenAL: sudo apt-get install libopenal0a libopenal-dev 
ALUT: sudo apt-get install libalut0 libalut-dev

g2o

g2o地址:GitHub - RainerKuemmerle/g2o at 20200410_git

编译安装

可查看g2o源码文档

卸载g2o

sudo rm -r /usr/local/include/g2o	//删除g2o的头文件,位于/usr/local/include/g2o下
sudo rm -r /usr/local/lib/libg2o*	//删除g2o的库文件,位于/usr/local/lib下
sudo rm -r /usr/local/bin/g2o*	//删除g2o的可执行文件,位于/usr/local/bin下
sudo rm -r /usr/local/lib/cmake/文件名 //g2o在cmake中不存在相关文件  别的库可能会存在 记录一下供参考

安装依赖

#fatal error: g2o/solvers/cholmod/linear_solver_cholmod.h: 没有那个文件或目录
sudo apt-get install cmake libeigen3-dev libsuitesparse-dev libqt4-dev qt4-qmake libqglviewer-dev
#出现报错软件包libqglviewer-dev没有可安装候选
#解决方法:
apt-cache search libqglviewer-dev
#出现如下:
libqglviewer-dev-qt5 - OpenGL 3D viewer library based on Qt5 - development files
#选择需要安装的:
sudo apt-get install libqglviewer-dev-qt5

ceres-solver

https://github.com/ceres-solver/ceres-solver.git
安装方法见官网:Installation — Ceres Solver (ceres-solver.org)

Ceres-Solver 安装与卸载ubuntu20.04_weixin_54470372的博客-CSDN博客

opencv

mkdir build && cd build
cmake ..
make
sudo make install

Qt5

Ubuntu22.04安装qt_软件包 qt5-default 没有可安装候选_闫有尽意无琼的博客-CSDN博客

PCL点云库

posted @   alvinlyb  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示