
CMake
文章平均质量分 68
游码客
更多内容查看公众号微信,公众号同名,接私活项目,有项目可私聊我
展开
-
【CMake】(13)流程控制
这些表达式可以是常量、变量或字符串,CMake会根据这些表达式的值来判断条件为真(True)或假(False)。如果需要从特定的起始值开始遍历,到特定的终止值结束,并且还可以指定步长(默认为1),可以使用增强版的。可以执行重复的任务,如设置变量、打印信息、或者根据列表中的每个项目执行特定的命令。,这对于比较两个路径是否相等非常有用,特别是在路径可能包含多余的分隔符时。,这允许你同时遍历多个列表,并在每次迭代中从每个列表中取出相应位置的元素。查询,这允许开发者检查一个变量或字符串是否在一个给定的列表中。原创 2024-02-27 08:00:00 · 958 阅读 · 0 评论 -
【CMake】(12)项目嵌套
在一个大型项目中,通常会涉及到多个组件,比如库(静态库或动态库)、应用程序、测试单元等。为了更好地管理和维护这些组件,我们可以将它们组织成不同的子目录,并为每个子目录创建一个文件。允许你在一个大型项目中包含多个子项目或子目录,从而实现项目的模块化管理。原创 2024-02-27 08:00:00 · 1872 阅读 · 0 评论 -
【CMake】(11)宏定义
如果需要在CMakeLists.txt的后续部分移除之前添加的定义,可以使用命令。虽然对整个项目的所有目标有效,但如果你想为特定目标(例如某个库或可执行文件)添加宏定义,推荐使用。原创 2024-02-26 08:00:00 · 1842 阅读 · 0 评论 -
【CMake】(10) 变量操作
假设你有一个包含文件路径的列表,并且你想要按照文件的基本名进行不区分大小写的降序排序。命令在处理 CMake 列表时更为强大,可以用于追加、移除和操作列表。的列表,包含三个条目 “item1”、“item2” 和 “item3”。命令不仅可以用于定义变量,还可以用于修改变量的值,包括追加新值。中的文件路径按照它们的基本名(忽略大小写)进行降序排序。的索引1的位置(即 “item1” 之后)插入 “item1_5”。命令搜索某个目录下的所有文件,并将它们添加到列表中,然后使用。的列表中的元素进行升序排序。原创 2024-02-26 08:00:00 · 1291 阅读 · 0 评论 -
【CMake】(9) 日志
message函数被用于向用户显示信息。这个函数可以在 CMake 运行时输出各种级别的消息,包括状态消息、警告、错误等。原创 2024-02-25 08:00:00 · 504 阅读 · 0 评论 -
【CMake】(8)包含库文件
指令用于为特定的目标(如可执行文件或其他库)指定要链接的库。这不仅包括链接库的名称,还可以指定链接的特定属性,如私有(指令用于向链接器添加库文件搜索路径。这意味着当CMake生成构建系统时,它会告诉链接器在哪些额外的目录中搜索库文件。如果是windows环境的动态库,还需要将dll复制到bin目录下。可以加上下面的命令或者手动翻译。目录添加到库搜索路径中,链接器将会在这个目录下寻找库文件。CMake智能地处理库名称,自动解析为正确的文件名。指令用于配置和链接库文件。,不会传递给其他依赖。原创 2024-02-25 08:00:00 · 787 阅读 · 0 评论 -
【CMake】(7)生成库
首先,你需要将静态库文件(.lib)复制到你的项目目录中,或者至少保证Visual Studio能够找到它。变量,可以同时指定动态库和静态库的输出路径。变量,你可以指定可执行文件和具有执行权限的动态库文件的输出路径。可以通过设置特定的变量来指定库文件(无论是动态库还是静态库)和可执行文件的输出路径。(在Windows上)和对应平台的静态库文件,这两个文件都是需要的。文件中指定库的名称、类型(静态或动态),以及包含在库中的源文件。这会在指定的库输出路径(这里是项目根目录下的。的静态库,并将该库的头文件放在。原创 2024-02-24 08:30:00 · 1688 阅读 · 0 评论 -
【CMake】(6)包含头文件
这使得在编译时编译器能够找到项目中使用的所有头文件。命令用于向项目添加头文件搜索路径,这样编译器就可以在这些路径下查找头文件。下面是使用的一个详细示例和解释。原创 2024-02-24 08:30:00 · 1337 阅读 · 0 评论 -
【CMake】(5)搜索文件
命令用于查找指定目录下的所有源文件,并将文件列表存储到一个变量中。这种方法简单易用,适合于源文件位于单一目录下的情况。选项提供了更灵活的文件搜索功能。选项用于搜索指定模式的文件,而。选项会递归搜索指定模式的文件。原创 2024-02-23 08:00:00 · 591 阅读 · 0 评论 -
【CMake】(4)自定义设置
定义变量是一种管理和组织代码的有效方式,尤其是当涉及到重复使用相同的值或文件列表时。通过使用set命令,你可以创建自定义变量来存储一系列值,比如文件路径、选项、或者其他数据。这样,当需要引用这些值时,只需使用变量名,而不是重复输入相同的数据,从而使得CMake脚本更加简洁、易于维护。当使用变量存储文件路径或源文件列表时,确保路径正确,尤其是在跨平台项目中。使用CACHE选项时,要谨慎覆盖缓存中的值,特别是对于那些可能会被用户或其他CMake脚本修改的变量。原创 2024-02-23 08:00:00 · 1082 阅读 · 0 评论 -
【CMake】(3)预定义宏
命令中指定的版本信息,格式通常是。原创 2024-02-22 08:00:00 · 1040 阅读 · 0 评论 -
【CMake】(2)常用配置项
定义工程名称,并可指定工程的版本、工程描述、web主页地址、支持的语言(默认情况支持所有语言),如果不需要这些都是可以忽略的,只需要指定出工程名字即可。这些命令设置了C++标准版本为C++17,并且指定这一标准是必须的。源文件名可以是一个也可以是多个,如有多个可用空格或。这指定了构建此项目所需的最低CMake版本。文件,通常用于根据CMake选项配置源代码。例如,如果你有一个名为。如果你的项目中还有库,你可以在。的可执行文件,其源代码来自。这设置了安装规则,使得。这里的可执行程序名和。的值执行不同的命令。原创 2024-02-21 08:00:00 · 764 阅读 · 0 评论 -
【CMake】(1)C语言构建工具-快速开始
CMake是一个跨平台的自动化构建系统,它使用一个名为的文件来描述构建过程,可以生成标准的构建文件,如Unix的Makefile或Windows Visual Studio的工程文件。CMake支持多种编程语言,主要是C、C++,但也支持Fortran等。与传统的构建系统相比,CMake的一个主要优势是它能够管理大型项目中复杂的构建过程。原创 2024-02-20 08:00:00 · 994 阅读 · 0 评论