一、下载源码
bash
wget https://github.com/Kitware/CMake/releases/download/v3.29.5/cmake-3.29.5.tar.gz
tar -xzvf cmake-3.29.5.tar.gz
二、编译
运行./bootstrap。
如果出现下列问题:
-- 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:644 (message):
Could not find OpenSSL. Install an OpenSSL development package or
configure CMake with -DCMAKE_USE_OPENSSL=OFF to build without OpenSSL.
安装OpenSSL开发包:sudo apt-get install libssl-dev。
运行make 编译。
三、安装
运行make install
查看版本:sudo cmake --version
复制cmake到/usr/bin: cpy /usr/local/bin /usr/bin
遇到的问题是CMake在尝试构建某个项目时未能找到OpenSSL库。
这通常用于提供加密功能,很多软件依赖它。这里提供几个解决办法:
- 安装OpenSSL开发包
在不同的操作系统上安装OpenSSL的方法有所不同。
- 在Ubuntu/Debian类Linux发行版上,你可以使用以下命令安装:
bash
sudo apt-get update
sudo apt-get install libssl-dev
- 在Fedora/RedHat/CentOS上,你可以使用以下命令安装:
bash
sudo yum install openssl-devel
- 对于macOS,可以使用Homebrew安装OpenSSL:
bash
brew install openssl
- 在Windows上,你可以从[OpenSSL官网](https://www.openssl.org/)下载相应的预编译版本,或使用像vcpkg这样的包管理器进行安装。
- 设置OPENSSL_ROOT_DIR环境变量
如果OpenSSL已安装但CMake找不到它,你可能需要设置环境变量 OPENSSL_ROOT_DIR 到OpenSSL的安装根目录。在命令行中,你可以这样做:
- 对于Linux和macOS:
bash
export OPENSSL_ROOT_DIR=/path/to/openssl
把 /path/to/openssl 替换为实际的OpenSSL安装路径。
- 对于Windows,你可以在命令提示符下执行以下命令或在系统环境变量中设置:
bash
set OPENSSL_ROOT_DIR=C:\path\to\openssl
同时确保对 OPENSSL_CRYPTO_LIBRARY 和 OPENSSL_INCLUDE_DIR 环境变量也设置正确的路径。
- 重新运行CMake
在安装OpenSSL并确设置环墜变量后,重新运行CMake生成过程。
如果你想在构建项目时关闭OpenSSL,你可以通过传递 -DCMAKE_USE_OPENSSL=OFF 标志给CMake来实现这一点。例如:
bash
cmake -DCMAKE_USE_OPENSSL=OFF ..
这将配置CMake不使用OpenSSL构建项目。
以上步骤应该能帮助解决找不到OpenSSL的问题。如果问题依然存在,请确保你的OpenSSL版本与项目兼容,有时候最新版本的OpenSSL可能不被旧项目支持。此时,尝试安装项目推荐的OpenSSL版本或更新项目代码到支持最新OpenSSL库的版本。
在Ubuntu中升级CMake
你可以按照以下步骤进行,这些步骤结合了参考文章中的信息,并进行了适当的归纳和整理:
方法一:使用apt包管理器(推荐)
-
更新系统包列表 :
打开终端,输入以下命令来更新系统上的包列表:
bashsudo apt-get update
-
安装或升级CMake :
使用apt包管理器安装或升级CMake到Ubuntu仓库中的最新版本。输入以下命令:
bashsudo apt-get install cmake
如果CMake已经安装,这个命令会将其升级到仓库中的最新版本。
方法二:从源代码编译安装(如果需要最新版本)
如果你需要安装CMake的最新版本,而Ubuntu仓库中的版本不满足你的需求,你可以从源代码编译安装CMake。
-
下载CMake源代码 :
访问CMake的官方网站(https://cmake.org/download/)下载最新版本的源代码。你也可以使用wget命令在终端中下载,例如:
bashwget https://cmake.org/files/vX.YY/cmake-X.YY.Z.tar.gz # 请替换为实际的版本号
请将
X.YY.Z
替换为实际的版本号。解压下载的源代码 :
使用tar命令解压下载的源代码:
bashtar -zxvf cmake-X.YY.Z.tar.gz # 请替换为实际的压缩包名
进入解压后的目录并配置CMake :
进入解压后的目录,并执行配置脚本以准备构建环境:
bashcd cmake-X.YY.Z # 请替换为实际的目录名 ./bootstrap
编译CMake :
使用make命令编译CMake:
bashmake
这可能需要一段时间,特别是如果你的系统配置较低。
-
安装CMake :
使用sudo和make install命令安装CMake:
bashsudo make install
-
验证安装 :
通过输入以下命令来验证CMake是否已成功安装并检查其版本:
bashcmake --version
方法三:使用第三方仓库(可选)
如果你希望使用第三方仓库来获取CMake的最新版本,你可以按照参考文章1或参考文章2中的步骤来添加Kitware的APT仓库并安装CMake。但请注意,使用第三方仓库可能会引入额外的风险,因此在选择和使用之前,请务必仔细阅读相关的文档和说明。
注意事项
- 在升级CMake之前,请确保你的项目和其他依赖项与新版本的CMake兼容。
- 如果你之前安装了旧版本的CMake,并且想要确保新安装的版本成为默认版本,你可能需要使用
update-alternatives
命令或修改PATH环境变量。但请注意,CMake通常不会通过apt包管理器安装多个版本,所以这一步可能是不必要的。 - 如果你遇到任何问题或错误消息,请参考相关的错误输出和文档进行故障排除。