本教程将指导您完成创建和开发简单CMake项目的过程。我们将逐步学习CMake作为构建系统的基础知识,以及CMake项目的CLion设置和操作。
CLion最新试用版
本教程将指导您完成创建和开发简单CMake项目的过程。我们将逐步学习CMake作为构建系统的基础知识,以及CMake项目的CLion设置和操作。
1.基本的CMake项目
CMake是一个元构建系统,它使用称为CMakeLists的脚本为特定环境生成构建文件(例如,Unix计算机上的makefile)。在CLion中创建新的CMake项目时,会在项目根目录下自动生成CMakeLists.txt文件。
让我们从创建一个新的CMake项目开始,转到File | New Project ,然后选择C ++ Executable。在我们的示例中,项目名称为cmake_testapp,并且所选语言标准为C ++ 14。
默认情况下,我们使用单个源文件获取项目主.cpp以及自动创建的根CMakeLists.txt文件包含以下命令:


2.构建目标和运行/调试配置
目标是使用CMake脚本构建的可执行文件或库。您可以在一个脚本中定义多个构建目标。
目前,我们的测试项目只有一个构建目标cmake_testapp。首次加载项目时,CLion自动添加与此目标关联的运行/调试配置:


注意此对话框的“Before launch ”区域:默认情况下,将构建设置为启动前步骤。因此,我们不仅可以使用此配置来调试或运行目标,还可以执行构建。
3.添加目标并重新加载项目
现在,让我们添加另一个源文件calc.cpp并从中创建一个新的可执行目标。
右键单击“项目”树中的根文件夹,然后选择“ New | C/C++ Source File.”。C / C ++源文件。CLion提示将文件添加到现有目标:

由于我们的目标是创建新目标,因此请清除“Add to targets”复选框。因此,CLion通知我们新文件当前不属于任何目标:

现在,让我们在CMakeLists.txt中手动声明一个新目标。请注意,CLion将CMake脚本视为常规代码文件,因此我们可以使用代码辅助功能,例如语法突出显示,自动完成和导航:

当我们在CMakeLists.txt中进行更改时,CLion需要重新加载它以更新项目结构:

我们可以重新加载项目一次(重新加载更改),也可以启用自动重新加载以使CLion默认应用CMakeLists.txt中的所有更改。 Settings / Preferences | Build, Execution, Deployment | CMake自动重新加载的选项。
重新加载项目后,CLion为新目标添加Run/Debug :

Library targets
到目前为止,我们添加的目标是可执行文件,我们曾经add_executable声明过它们。对于库目标,我们需要另一个命令-add_library。例如,让我们从calc.cpp源文件创建一个静态库:
add_library(test_library STATIC calc.cpp)
与可执行文件一样,CLion在重新加载项目后为库目标添加Run/Debug配置:

但是,这是不可执行的配置,因此,如果我们尝试运行或调试它,则会收到

要获取库文件,我们需要构建test_library目标。为此,我们可以切换到相应的配置并按

4.构建类型和CMake配置文件
到目前为止创建的所有“Run/Debug”配置都是“Debug”配置,这是为我们的项目自动配置的CMake配置文件的默认构建类型。CMake配置文件是项目构建的一组选项。它指定了工具链,构建类型,CMake标志,用于存储构建工件的路径,make生成选项以及环境变量。
例如,要分离Debug和Release版本,我们需要


注意Build directory字段,该字段指定生成结果的位置。对于调试配置文件,默认文件夹是cmake-build-debug;对于发布配置文件,默认文件夹是cmake- build-release。您始终可以设置其他选择的位置。
现在,“运行/调试”配置切换器显示两个可用的配置文件:

切换配置或CMake配置文件可能会影响解析代码时使用的预处理器定义。例如,当有针对Debug和Release构建的单独标志时,或者当某些变量根据构建类型采用不同的值时。这称为解析上下文。
解析上下文定义了CLion如何执行语法突出显示以及其他代码见解,例如“查找用法”,重构和代码完成。在配置之间切换时,当前文件的解析上下文会自动更改。另外,您可以在上下文切换器中手动选择它(<自动选择>恢复自动选择):

今天的内容你学会了吗下来我们将讲解目录与库方面的知识!前往 免费下载最新版尝试一下,在评论分享你的想法。隆重推出“软件国产化服务季 ” 低价狂潮,省到尖叫最高立减2999元!低至797元!想要购买Clion正版授权的朋友欢迎咨询官方客服。
JetBrain技术交流群现已开通,QQ搜索群 “786598704”或者扫描下方二维码即可加入

标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!