CLion教程-自定义构建目标和应用程序
自定义构建目标与任何特定的构建系统或项目模型无关:CLion 使用您选择的外部工具来构建源代码并清理构建产物。
自定义目标对于编译数据库项目特别有用。虽然 compile_commands.json 本身缺少构建和运行应用程序所需的信息,但自定义目标和自定义运行/调试配置有助于绕过这个限制。
自定义目标还可以在Makefile运行/调试配置中使用。
在下面的示例中,我们将向编译数据库项目中添加一个目标,获取构建结果,然后创建一个自定义配置,以便在CLion中直接运行可执行文件。
创建自定义构建目标
让我们打开一个编译数据库项目。点击“文件 | 打开”,指向 compile_commands.json,然后选择“以项目方式打开”。
- 注意,默认情况下,构建菜单显示没有可用的操作,除了重新编译(您可以使用它来编译当前打开的源文件):
- 注意,默认情况下,构建菜单显示没有可用的操作,除了重新编译(您可以使用它来编译当前打开的源文件):
- 转到“设置 | 构建、执行、部署 | 自定义构建目标”,然后点击 添加一个新目标。此对话框也可以从自定义构建应用程序编辑器中访问。
指定以下设置:
- 工具链
此处选择的工具链将为我们稍后将创建的自定义运行/调试配置提供环境和调试器。
默认情况下,自定义构建工具在本地系统环境中工作,不考虑所选的工具链。
如果您需要在另一个工具链(例如WSL)上构建项目,那么用于构建的工具应该负责配置连接和在该环境中启动。对于这种情况,我们建议使用构建脚本。
请注意,具有自定义构建目标的编译数据库项目使用两个独立的工具链:
- “设置 | 构建、执行、部署 | 编译数据库”以解析您的项目文件。
目标的工具链,为自定义运行/调试配置定义环境和调试器。
- 构建和清理
设置构建和清理项目所需的工具:从可用工具列表中进行选择,或者点击 ,使用 和 按钮编辑或添加新工具。
在我们的示例中,构建工具(名为 build_with_make)调用 make,清理工具(clean_with_make)调用
make clean
:
与在“设置 | 工具 | 外部工具”中配置的常规外部工具不同,自定义目标工具存储在每个项目中,无法通过主菜单上的“工具 | 外部工具”访问。反过来,您无法将IDE范围的外部工具设置为自定义目标的构建/清理工具。
- 保存目标后,我们可以开始使用“构建项目”和“重新构建项目”操作。请注意,在存在多个自定义目标的情况下,这些操作与列表中的第一个目标相关联。
- 如果我们选择“构建项目”,CLion 将运行名为 build_with_make 的工具,该工具为项目源代码调用了
make
:
创建自定义运行/调试配置
现在我们有了一个构建目标,我们可以创建一个配置来运行和调试可执行文件。
- 转到“运行 | 编辑配置”,点击 ,从配置模板列表中选择 自定义构建应用程序。
在“目标”字段中选择新创建的自定义目标。要在不离开配置编辑器的情况下添加或编辑目标,请点击“配置自定义构建目标”。
在“可执行文件”字段中指定应用程序二进制文件。请注意,您在这里也可以使用远程可执行文件。- 对于我们的示例,我们还添加了一个程序参数 func.cpp:
- 对于我们的示例,我们还添加了一个程序参数 func.cpp:
- 保存配置后,我们可以在“构建”菜单中看到新的构建操作:
现在我们可以运行或调试这个配置,并使用所有CLion的调试和动态分析功能。
- 让我们运行我们的示例并查看程序结果:
- 让我们运行我们的示例并查看程序结果: