Ubuntu安装cmake
前言
本文为《CUDA与TensorRT部署学习笔记》系列中环境配置篇。本文主要记录安装cmake的几种方式及优缺点,重点介绍使用源代码手动编译的安装方式。
1 cmake安装方式说明
Ubuntu 安装 cmake 有以下几种方式
- 通过 apt 包管理器安装
- 通过源代码手动编译安装
- 使用 Snap 包安装
- 使用CMake官方提供的安装脚本
2 安装过程
2.1 通过apt包管理器安装
2.1.1 安装操作
sudo apt-get update sudo apt-get install cmake
2.1.2 优缺点
- 优点: 简单方便,能够轻松通过包管理器维护和更新。
- 缺点: 安装的是系统默认版本,可能不是最新版本。如果项目需要使用最新的CMake功能,这种方式可能不够灵活。
2.2 通过源代码手动编译安装
2.2.1 安装流程
(1)先查看下系统是否已经存在cmake
cmake --version
(2)若存在则先卸载原先版本
sudo apt-get remove cmake
(3)进入官网进行下载
官网地址:cmake.org/download/ 。如图这边选择的是该版本的cmake。
(4)将文件上传到服务器指定位置,进行文件解压
tar -xzvf cmake-3.28.0-rc5.tar.gz
(5)进入解压后的目录
cd cmake-3.28.0-rc5
(6)编译和安装:
./bootstrap
(7)报错及解决
-
问题1:
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL\_ROOT\_DIR \(missing: OPENSSL\_CRYPTO\_LIBRARY OPENSSL\_INCLUDE\_DIR\) CMake Error at Utilities/cmcurl/CMakeLists.txt:647 \(message\): Could not find OpenSSL. Install an OpenSSL development package or configure CMake with -DCMAKE\_USE\_OPENSSL\=OFF to build without OpenSSL.解决办法:
缺失库原因,通过以下指令解决sudo apt-get install libssl-dev然后试下
-
./bootstrap -
问题2:
CMake Error at /root/anaconda3/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 \(message\): Failed to find "GL/gl.h" in "/root/anaconda3/include;/opt/conda/conda-bld/qt-main\_1660123285207/\_build\_env/x86\_64-conda-linux-gnu/sysroot/usr/include;/opt/conda/conda-bld/qt-main\_1660123285207/\_build\_env/x86\_64-conda-linux-gnu/sysroot/usr/include/libdrm;/opt/conda/conda-bld/qt-main\_1660123285207/\_build\_env/x86\_64-conda-linux-gnu/sysroot/usr/include". Call Stack \(most recent call first\): /root/anaconda3/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake:233 \(include\) /root/anaconda3/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake:100 \(find\_package\) Tests/CMakeLists.txt:280 \(find\_package\)解决办法
解决"GL/gl.h"头文件缺失,安装OpenGL相关的开发包sudo apt-get install libgl1-mesa-dev然后试下
./bootstrap好像没有报错了
(8)编译构建
make
(9)安装
make install
(10)验证安装结果
cmake --version
如果出现,证明安装成功
cmake version 3.28.0-rc5
CMake suite maintained and supported by Kitware (kitware.com/cmake).
2.2.2 优缺点
- 优点: 可以安装最新版本,具有更多的灵活性。
- 缺点: 需要手动处理依赖关系,可能会导致一些问题。维护和更新也需要手动处理。
2.3 通过snap包安装
Snap 包是一个更现代的包管理器,可以提供更安全和稳定的软件。
2.3.1 安装流程
-
安装 Snap 包管理器
sudo apt install snapd -
运行以下命令安装 cmake
sudo snap install cmake
2.3.2 优缺点
- 优点: 提供最新版本的CMake,且与系统其他软件包独立。
- 缺点: Snap包会占用一些磁盘空间,并且可能与系统的其他软件包管理方式不太一致。
2.4 使用CMake官方提供的安装脚本
2.4.1 安装流程
wget https://cmake.org/files/v3.x/cmake-3.x.x-Linux-x86_64.sh
chmod +x cmake-3.x.x-Linux-x86_64.sh
sudo ./cmake-3.x.x-Linux-x86_64.sh --skip-license --prefix=/usr
2.4.2 优缺点
- 优点: 提供了一个方便的脚本,可以指定安装目录。
- 缺点: 仍然需要手动处理依赖关系。
3 总结
选择安装方式取决于你的具体需求。如果你需要一个方便、维护容易的安装,使用包管理器可能是最好的选择。如果你需要更大的灵活性和最新的功能,手动编译安装可能更适合。 Snap包和CMake官方提供的安装脚本提供了一些折中的选择,可以满足不同的需求。
我这边选择第二种,手动编译安装哈!