一 什么是CMake,为什么要使用它
CMake 是用于构建、测试和软件打包的开源跨平台工具,
为什么要用cmake,是因为我们需要一个构建系统解决如下问题:
1.你想避免硬编码路径
2.您需要在多台计算机上构建一个包
3.你想使用 CI(持续集成)
4.你需要支持不同的操作系统
5.你想支持多个编译器
6.您想使用 IDE,但不是所有情况
7.你想描述你的程序的逻辑结构,而不是标志和命令
8.你想使用库
9.您想使用其他工具来帮助您编写代码 moc ProtoBuf
10.你想使用单元测试
二 Linux CMake安装(ubuntu 20.04 LT) ubuntu cmake
Linux下面我们使用源码安装,这样可以安装最新版本,如果不用源码也可以直接用
sudo apt install cmake 命令安装。
手动下载cmake源码,我这边使用的是cmake3.23.1版本,下载地址 cmake.org.cn
下面是我们Linux上源码安装cmake的步骤,我们使用的系统是 ubuntu 20.04 LT:
1.安装编译工具和依赖库
sudo apt install g++
sudo apt install make
apt install libssl-dev
2.解压cmake源码并编译
tar -xvf cmake-3.23.1.tar.gz
cd cmake-3.23.1
https://www.bilibili.com/read/configure
make -j32
3.安装编译好的cmake
sudo make install
4.设置cmake的运行路径
vi /.bash_profile
文件中添加
export PATH=/usr/local/share/cmake-3.23.1:$PATH
5.运行cmake查看版本
xcj@ubuntu:\( cmake --version</p><p>cmake version 3.23.1</p><p>CMake suite maintained and supported by Kitware (kitware.com/cmake).</p><p><strong>三 CMake Windows下安装 </strong></p><p>在windows下的cmake我们使用二进制发布文件安装,当然你也可以用源码安装,可以安装完二进制cmake后,再用cmake编译cmake源码,编译的流程和上面的linux基本一致。我测试的系统是windows11 并且安装了vs2022</p><p>1 首先到cmake.org.cn下载cmake windows下的二进制发布包,解压后,讲起bin目录包含cmake.exe的路径设置到环境变量Path中。</p><p>windows系统属性-》高级-》环境变量=》设置Path</p><p> </p><p><br></p><p> </p><p> </p><p>2 设置完成后,进入windows控制台,输入cmake --version 查看cmake版本</p><p> </p><p><br></p><p> </p><p><strong>四 MacOS CMake 安装</strong></p><p>测试用系统 macOS Monterey 12.2.1</p><p>1.安装brew</p><p>在macOS中打开终端,系统默认安装了clang,macOS中安装需要管理员权限,管理员如果密码为空会失败,先设置下密码</p><p>安装brew </p><p>/bin/bash -c "\)(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
2.安装

3.安装编译环境 安装make 和clang
brew install make
brew install clang
brew install clang++
4.解压cmake源码并编译
tar -xvf cmake-3.23.1.tar.gz
cd cmake-3.23.1
https://www.bilibili.com/read/configure
make -j32
5.安装编译好的cmake
sudo make install
6.查看cmake版本
cmake –version
到此为止三个平台的cmake都安装完毕,下面我再来写一些cmake教程文章,官方的手册可以到 cmake.org.cn 上查询。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/193095.html