Ubuntu编译安装CMake

简介: Ubuntu编译安装CMake

通过编译安装的方式,可以方便地安装指定版本的CMake,并能够卸载或升级,不会因为apt安装cmake而导致卸载cmake时影响到其他包

下载

方法一:官网下载

官网下载界面 选择自己需要的版本的源码,或在github仓库中clone对应版本的分支的代码,也可直接使用master分支的代码

方法二:gitee下载

仓库地址,下载方法同github仓库,这个仓库是从github仓库导入gitee的

安装

1. 安装依赖

sudo apt install build-essential libncurses5-dev ninja-build libssl-dev libarchive13 libcurl4 librhash0 libuv1

若不使用ninja编译,可不用安装 ninja-build

还有可能缺少其他的依赖,需要在编译过程中根据报错去搜索解决

2. 编译

方法一:使用make

在下载的CMake源码文件夹中打开终端,依次运行以下命令

./bootstrap

若内存或交换内存不够(-j20时,占用了15.1G内存+20G交换内存,ubuntu默认交换内存只有2G,手动调整交换内存大小见博客 Ubuntu调整swap大小),可能会爆内存,建议根据CPU线程数指定-j参数,比如 make -j8 或 make -j16

make -j
sudo make install

方法二:使用ninja(推荐,速度更快)

在我的电脑上使用make耗时4分多钟,而使用ninja只需1分钟,且占用内存更少。要了解ninja可去 ninja官网

./bootstrap --generator=Ninja

ninja默认调用所有线程,但不会爆内存,也可使用-j4、-j8等参数指定

ninja
sudo ninja install

3. 测试

终端中输入

cmake --version

若打印出版本信息,则说明安装成功

ccmake

cmake在unix系统下的GUI程序,编译安装cmake时若 BUILD_CursesDialog
值为ON(若安装有libncurses5-dev,则值自动为ON)会自动安装该程序,apt安装cmake则还需执行 sudo apt install cmake-curses-gui 命令来安装ccmake。cmake也有qt界面的GUI程序,但需要安装qt。

ccmake可以方便地显示并改变程序编译时的参数,同样支持指定生成器,比如使用cmake并指定生成器为Ninja时,命令是这样

cmake -G Ninja ..

使用ccmake时则命令是这样

ccmake -G Ninja ..

在 [Ubuntu编译安装OpenCV]() 中展示了如何使用ccmake设置opencv编译参数并使用Ninja编译opencv

cmake-gui

使用QT窗口的cmake GUI程序,需要将编译参数 BUILD_QtDialog 设置为ON(不会自动开启),可通过 ccmake 开启

使用时直接运行

cmake-gui

若安装完cmake且编译时开启了相应的编译选项,运行时仍未找到ccmake或cmake-gui,可执行 hash -r 后重开终端再运行,还不行则需检查是否有依赖库未安装,安装好后重新编译安装cmake

目录
相关文章
|
3月前
|
Ubuntu Linux
任何Ubuntu用户都应安装的四大Linux应用程序
当然,这款程序不需要太多介绍。我们面对的是网上最庞大最完整的多媒体中心,由于丰富的插件,我们能够高度细化地定制其每一项功能。这是我们的Linux发行版不可或缺的必备软件。 我们可以通过运行以下命令来轻松安装Kodi:sudo apt install kodi。
|
3月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
3月前
|
Ubuntu Linux 网络安全
Linux服务器之Ubuntu的安装与配置
Ubuntu Desktop是目前最成功、最流行的图形界面的Linux发行版;而Ubuntu Server也在服务器端市场占据了较大的份额。今天为大家详细介绍了Ubuntu Server的安装与配置,希望对你能有所帮助。关于VMware、VirtualBox等虚拟化软件的使用,朱哥还会在后续的文章中为大家详细介绍,敬请关注!
|
1月前
|
Ubuntu 安全 iOS开发
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
125 5
|
1月前
|
NoSQL Ubuntu MongoDB
在Ubuntu 22.04上安装MongoDB 6.0的步骤
这些步骤应该可以在Ubuntu 22.04系统上安装MongoDB 6.0。安装过程中,如果遇到任何问题,可以查阅MongoDB的官方文档或者Ubuntu的相关帮助文档,这些资源通常提供了解决特定问题的详细指导。
218 18
|
2月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
213 18
|
2月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
239 15
|
2月前
|
存储 Ubuntu iOS开发
在Ubuntu 22.04系统上安装libimobiledevice的步骤
为了获取更多功能或者解决可能出现问题,请参考官方文档或者社区提供支持。
152 14
|
2月前
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
391 7
|
2月前
|
消息中间件 人工智能 运维
Ubuntu环境下的 RabbitMQ 安装与配置详细教程
本文聚焦在Ubuntu下RabbitMQ安装与配置教程,旨在帮助读者快速构建稳定可用的消息队列服务。