讲师中心 微信公众号

工具推荐

视频效率加速
Seko
Seko

AI短剧一键生成成片

立刻MV
立刻MV

低成本歌曲 MV、视频生成

updream

一键生成高质量推广成片

剧云
剧云

中文短剧剧本制作平台

linux怎么安装CMake工具_linux配置源码编译环境【攻略】

雨丽君_3510

雨丽君_3510

发布时间:2026-03-13 10:29:03

|

854人浏览过

|

来源于php中文网

原创

必须运行 cmake --version 确认真实版本,因系统默认CMake常过旧(如CentOS 7仅2.8、Ubuntu 18.04仅3.10),且多版本共存时PATH顺序决定生效版本。

linux怎么安装cmake工具_linux配置源码编译环境【攻略】

怎么确认系统里没装 CMake 或版本太低

很多报错其实就卡在这一步:你以为装了,其实没装;或者装了但 cmake --version 显示的是 3.10,而项目要求 3.16+。Ubuntu/Debian 默认源里的 cmake 包往往老旧,CentOS 7 自带的甚至只有 2.8。别信 which cmake 的结果,一定要跑 cmake --version 看真实版本。

  • 检查是否可用:cmake --version,如果报 command not found,说明真没装
  • 已安装但版本不够?常见于 Ubuntu 20.04(自带 3.16.3)但项目要 3.20+,或 CentOS 7(自带 2.8.12)
  • whereis cmake 和 type -a cmake 能帮你发现是不是有多个版本混着用,比如手动编译的和包管理器装的冲突

Ubuntu/Debian 直接用 apt 安装够不够用

够用的前提是你的发行版比较新,且项目对 CMake 版本不敏感。老系统(如 Ubuntu 18.04、Debian 10)apt 源里的 cmake 是 3.10 或 3.13,编译较新的 C++ 项目(比如用 find_package(Threads REQUIRED) 或 FetchContent)容易失败。

  • 新版 Ubuntu(22.04+)可直接 sudo apt update && sudo apt install cmake,版本通常 ≥ 3.22
  • 老系统想省事,加官方预编译仓库:sudo apt install software-properties-common && sudo add-apt-repository "deb [arch=amd64] https://apt.kitware.com/ $(lsb_release -cs) main" && sudo apt update && sudo apt install cmake
  • 别装 cmake-data 或 cmake-curses-gui 这类分拆包——它们不提供 cmake 可执行文件,装了也白装

CentOS/RHEL 怎么绕过 2.8 版本陷阱

CentOS 7 自带的 cmake 是 2.8.12,连 target_compile_features 都不支持,强行用会报类似 Unknown CMake command "target_compile_features" 的错误。yum 源里也没有高版本,必须换方式。

  • 最稳的是下载官方二进制包:wget https://github.com/Kitware/CMake/releases/download/v3.28.1/cmake-3.28.1-linux-x86_64.tar.gz,解压后把 bin/ 加进 $PATH(比如写进 ~/.bashrc 的 export PATH="/path/to/cmake-3.28.1-linux-x86_64/bin:$PATH")
  • 别用 epel 源里的 cmake3 ——它只是个兼容包名,实际还是 2.8 或 3.6,不可靠
  • 手动编译安装?除非你真需要调试 CMake 本身,否则纯属增加出错概率:依赖 ncurses-devel、openssl-devel,还可能卡在 Bootstrap failed

验证安装是否真正生效

改完 PATH 或装完包后,别急着去编译项目。很多人在这里翻车:终端没重载配置、Shell 类型不对(比如用了 zsh 却改了 .bashrc)、或者 cmake 被 alias 覆盖了。

  • 新开一个终端,运行 which cmake,确认路径指向你刚装的位置(比如 /opt/cmake-3.28.1/bin/cmake)
  • 运行 cmake --version 和 cmake -E echo "test"(-E 是内置命令,能快速验证基础功能)
  • 如果项目里仍报错,检查 CMAKE_ROOT 环境变量有没有被误设——它会干扰模块查找,一般不需要手动设

最容易被忽略的是 shell 配置文件的加载时机和多版本共存时的优先级。PATH 里谁在前,谁就生效,哪怕你 sudo make install 到 /usr/local/bin,只要 /usr/bin 在它前面,系统还是调旧版。

相关文章

热门游戏推荐
热门游戏推荐

海量精品小游戏合集,无需安装即点即玩,休闲益智、动作闯关应有尽有,秒开即玩,轻松解压,快乐停不下来

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

花生AI
花生AI Hot

一款AI视频创作工具,主要用于B站推出的AI视频创作工具,适合需要提升相关任务效率的用户。

创客贴AI

创客贴AI是一款AI图像与设计工具,AI辅助的智能在线设计工具。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
bootstrap框架介绍
bootstrap框架介绍

本专题整合了bootstrap框架相关介绍,阅读专题下面的文章了解更多详细内容。

785

2026.03.18

bootstrap安装教程
bootstrap安装教程

本专题整合了bootstrap安装相关教程,阅读专题下面的文章了解更多详细操作教程。

199

2026.03.18

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

8865

2026.01.21

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

998

2026.04.02

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

5590

2024.08.16

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

4530

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

3793

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

3113

2023.06.30

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Miniconda官方安装文档
Miniconda官方安装文档

共0课时 | 0人学习

phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习

安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 207人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn