
Q? & A!
Q: 什么是CMake?
- 跨平台开源的代码构建工具。
Q: 如果说新技术的出现是为了解决旧问题,那么CMake是为了解决什么问题而出现呢?
- 复杂项目的第三方依赖代码库难以管理。
- 同一份开发人员系统,文件路径,环境变量等环境配置不一致导致的一系列问题。
Q: CMake是如何解决如上问题的呢?
- CMake提供了名为
CMakeLists的配置文件,并提供了相应的API。 例如
add_executable(<name> <options>... <sources>...)。- 向名为
<name>的项目中添加了一个<sources>的可执行源文件。
- 向名为
例如
target_include_directories(<target> [SYSTEM] [AFTER|BEFORE]<INTERFACE|PUBLIC|PRIVATE> [items1.[<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])- 用于为指定的目标(如可执行文件或库)设置包含目录。
- 包含目录是编译器在编译源文件时搜索头文件的路径。
例如
find_package()- 查找和配置第三方库。CMake 会在系统中搜索指定的库,并设置相应的变量。
例如
target_link_libraries()- 将找到的库链接到目标(如可执行文件或库)。
- 至于跨平台的问题日后A菌再用代码来进行体现~
- CMake提供了名为
Q: 严肃的总结一下?
- 关于
CMake,A菌在这里总结成一句话用来描述 项目结构 和 如何编译 的 描述性编程 (语言/系统/工具)
- 关于
所属系列
从当前文章继续阅读它所在合集中的前后内容。
A菌严肃的CMake手记 第 1 / 13 篇
查看合集 我也是從零開始學習CMAKE這個軟體
当前已是该系列第一篇
下一篇
[#2][Lucky start][A菌严肃的CMake手记]
相关文章
优先推荐同专题、同标签和同作者内容,补足热门文章。
评论 1
登录 后参与评论
👍