持续创造,加快成长!这是我参加「日新方案 10 月更文挑战」的第16天,点击检查活动详情
一、CMakeLists.txt 常用指令总结
1. command (args …)
- command:指令的名字
- args: 参数列表。多个参数运用空格隔开。
2. cmake_minimum_required
-
含义
设置项目要求的CMake最低版本号
-
示例
cmake_minimum_required(VERSION 2.8)
3. add_executable
- 含义 运用指定的源文件给项目添加一个可执行文件
- 格式
add_executable(<name> [WIN32] [MACOSX_BUNDLE] [EXCLUDE_FROM_ALL] source1 [source2 ...])
- 参数介绍:
- name:该指令调用列出的源文件来构建的可执行方针。 对应于逻辑方针名称,在项目中必须是大局唯一的。构建的可执行文件的实际文件名是基于本机渠道的约好。
- WIN32:假如给出WIN32,则在创立的方针上设置特点WIN32_EXECUTABLE。
- MACOSX_BUNDLE:假如给定MACOSX_BUNDLE,将在创立的方针上设置相应的特点。
- EXCLUDE_FROM_ALL:假如给定EXCLUDE_FROM_ALL,将在创立的方针上设置相应的特点。
- source:源码列表。
- 示例
add_executable (CMakeClient0331 "CMakeClient0331.cpp" "CMakeClient0331.h")
4. project
-
含义
为整个工程设置一个工程名
-
格式
project (<PROJECT-NAME> [LANGUAGES] [<language-name>...]) project (<PROJECT-NAME> [VERSION <major>[.<minor>[.<patch>[.<tweak>]]]] [LANGUAGES<language-name>...])
-
参数介绍:
二、cmake 指令
生成一个项目的构建体系
cmake [<options>] <path-to-source>
cmake [<options>] <path-to-existing-build>
cmake [<options>] -S <path-to-source> -B <path-to-build>
运用 <path-to-build>
作为构建树,运用 <path-to-source>
作为源树。指定的途径可所以绝对途径,也可所以相对于当时工作目录的途径。源树必须包含一个CMakeLists.txt文件。假如构建树还不存在,将主动创立它。例如:
cmake -DCMAKE_BUILD_TYPE=Release -S . -B build
Build a Project
cmake --build <dir> [<options>] [-- <build-tool-options>]
Install a Project
cmake --install <dir> [<options>]
Open a Project
cmake --open <dir>
Run a Script
cmake [{-D <var>=<value>}...] -P <cmake-script-file>
Run a Command-Line Tool
cmake -E <command> [<options>]
Run the Find-Package Tool
cmake --find-package [<options>]
View Help
cmake --help[-<topic>]
三、跨渠道 C++ 库办理工具: vcpkg 装置
1. 运用 gitbash 下载vcpkg
git clone https://github.com/microsoft/vcpkg
cd vcpkg
./bootstrap-vcpkg.sh #powershell上运用:.\bootstrap-vcpkg.bat
2. 运用 powershell 装置您的项目所需求的库:
进入vcpkg目录
cd vcpkg
装置库
.\vcpkg install [packages to install]
装置一个库,这里以之前提到过的 eigen3 为例
.\vcpkg install eigen3
3. 检查当时装置的库支撑的渠道
./vcpkg help triplets
4. 移除一个已经装置的库
.\vcpkg.exe remove eigen3
5. 运用search
子指令来查找vcpkg中集成的库:
.\vcpkg search [search term]
6. 集成到大局
Vcpkg提供了一套机制,可以全主动的适配目录,而开发者不需求关怀已装置的库的目录在哪里,也不需求设置[ 比如这里我需求在 Visual Studio 中运用 vcpkg,所以也需求运转以下指令 (首次发动需求办理员权限)]
.\vcpkg integrate install
CMake需求运用,记住下面的这个途径,在运用cmake构建的时候需求运用 CMAKE——TOOLCHAIN_FILE传入
-DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
也就是
cmake -DCMAKE_BUILD_TYPE=Release -S . -B build -DCMAKE——TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
7. 若要移除集成
.\vcpkg integrate remove
linux上可以参阅 blog.csdn.net/sexyluna/ar…
8. 检查装置列表
.\vcpkg list
9. 使用
cmake -S . -B build -DCMAKE--TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
10. 其他跨渠道C++库办理 conan
-
装置 python 略过,装置成功后可以检查版本
python --version
-
装置python的时候会主动装置pip
pip install conan