CLion 2026.2 Help

Makefile 项目

在 CLion 中对 Makefile 项目的全面支持仍在进行中。 使用链接到 CPP-494 的工单留下您的反馈并为所需功能投票。

打开一个 Makefile 项目

  1. 从主菜单中选择 文件 | 打开。

  2. 将 CLion 指向包含顶层 Makefile 的文件夹。

  3. 系统将提示您清理项目:

    加载项目对话框

    加载项目需要清理,因为 Make 构建是增量式的,仅编译更新的文件。 在未清理的项目上运行时,重新加载将遗漏所有未更改的文件,并可能导致运行不正确。

    如果您希望在不清理的情况下加载,请取消选中 清理项目 复选框。 您可以稍后清理并 重新加载 项目(例如,在执行必要的引导操作后)。

  4. CLion 开始加载项目,并在 构建 工具窗口中显示进度和状态:

    在构建工具窗口中的项目加载状态

    加载过程中可能会出现警告消息,但如果加载以绿色勾号 加载成功指示器 完成并显示在项目名称旁边,则表示加载成功。 如果您的项目未正确加载,请查看 故障排除 部分。

为已打开的项目加载一个 Makefile

您还可以将项目作为文件夹打开,并稍后加载 Makefile 。 例如,如果您的项目需要某些预配置步骤或运行脚本以准备最终的 Makefile,而在 CLion 中打开项目时尚未准备好,这将非常有用。

准备好后,要加载 Makefile ,请在编辑器中打开它并点击通知中的 加载 Makefile 项目 链接:

加载 Makefile 项目通知

或者,使用项目树中文件上下文菜单中的 加载 Makefile 项目 操作。

    配置自动重新加载

    默认情况下,CLion 不会自动更新或重新加载您的项目,除非发生外部事件(如 VCS 更新)。 您可以在 构建工具 设置中更改此行为。

    1. 转到 设置 | 构建、执行、部署 | 构建工具。

    2. 选择一个自动重新加载选项:

      自动重新加载设置
      • 任何更改 - 在 Makefile 中的任何更改时触发项目重新加载。

      • 外部更改 (默认)- 您的项目仅在外部事件(如 VCS 更新)时重新加载。 如果发生其他更改(例如,添加新文件),您将在 Makefile 上收到通知:

        Makefile 重新加载通知

    手动重新加载

    除了自动选项,您还可以手动重新加载项目:

    • 从主菜单中的 工具 | Makefile 调用 重新加载 Makefile 项目 或 清理并重新加载 Makefile 项目。

    • 或者,在构建工具窗口中点击 重新加载图标 或 清理并重新加载图标:

      构建工具窗口中的项目重新加载图标

    调整项目设置

    使用 设置 | 构建、执行、部署 | Makefile 对话框控制您的项目设置。

    Makefile 设置
    • 工具链

      在这里,您可以选择用于加载 Makefile 项目的工具链。

      请注意,NMake 当前不受支持 ,因此您无法直接使用 Visual Studio 工具链。 要使用它,您需要使用 GNU Make 单独构建项目。

      如果您选择的工具链包含非默认编译器(在 C 编译器 和 C++ 编译器 字段中显式配置),它们也会传递到 make。

    • 构建选项

      在此字段中,您可以为项目构建提供额外的 make 选项。 这些选项不会影响项目重新加载。

    • 命令

      在此字段中,您可以调整预配置参数。 请参阅 预配置(GNU Autoconf)。

    • 参数

      这些参数由 CLion 在调用 make 命令时使用,用于提取项目信息、清理项目或搜索构建目标。

    • 构建目标 和 清理目标

      这些目标与 make 命令一起使用,以提取项目信息。 如果您将 构建目标 字段留空,CLion 将采用项目顶层 Makefile 中指定的第一个目标。

      此外,这里指定的目标在您从 构建操作 菜单调用 构建项目 或 重新构建项目 时也会使用。

    您可以从 构建 工具窗口快速访问 Makefile 设置对话框。 从上下文菜单中选择 Makefile 设置 或点击 "设置"图标:

    从构建工具窗口访问 Makefile 设置

    高级设置

    更多 Makefile 项目的设置可在 设置 | 高级设置 中找到:

    Makefile 项目的高级设置

    运行/调试 Makefile 应用程序

    CLion 会为顶层 Makefile 中的每个目标自动创建一个 Native Application 配置:

    自动创建的 Native Application 配置

    在创建配置时,CLion 会过滤掉以下目标:

    • clean 目标。

    • 与对象文件 ( .o ) 对应的目标。

    • 以未知文件扩展名结尾的目标(例如, .d )。

    您可以自定义自动创建的配置,或在 编辑配置 对话框中创建新的配置(见下文)。

    创建一个 Native Application 配置

    1. 在主菜单中,转到 运行 | 编辑配置 ,点击 ,然后从模板列表中选择 原生应用程序:

      添加一个 Native Application 配置
    2. 在 目标 字段中,您可以选择一个检测到的目标:

      为 Native Application 配置选择目标

      另一种选择是设置一个类型为 生成 的自定义构建目标。 点击 ,位于 目标 字段旁边,添加 () 一个新的 生成 目标,并填写参数:

      为 Native Application 配置自定义目标
      为 Native Application 配置自定义目标
    3. 在 可执行文件 字段中,提供二进制文件的完整路径。

      要 远程 运行/调试,请提供 远程 机器上二进制文件的路径。 请注意,远程路径需要手动设置。

    4. 原生应用程序 模板的其他设置在 参考页面 中有描述。

    运行一个 Native Application 配置

    在切换器中选择所需的配置,然后使用以下选项之一:

    • 点击 运行 按钮。

    • 按下 Shift+F10。

    • 从主菜单中选择 运行 | 运行“选定配置”。

    调试一个 Native Application 配置

    在开始调试会话之前,请确保在 配置 中指定的二进制文件包含调试符号。

    在切换器中选择所需的配置,然后使用以下选项之一:

    • 点击 “运行”按钮 工具栏。

    • 按下 Shift+F9。

    • 从主菜单中选择 运行 | 调试“选定的配置”。

    运行 Makefile 目标

    您可以使用边栏菜单快速为特定目标调用 make:

    运行目标的边栏菜单

    或者,您可以从 生成 工具窗口 (视图 | 工具窗口 | make) 运行目标。 双击一个目标或选择它,然后点击 :

    从 make 工具窗口运行目标

    执行任何这些操作后,CLion 会创建一个 临时配置 ,类型为 Makefile Target。 您可以自定义它,或在 编辑配置 对话框中基于相同模板创建新的配置(见下文)。

    创建一个 Makefile Target 配置

    • 在主菜单中,转到 运行 | 编辑配置 ,点击 ,然后从模板列表中选择 Makefile 目标:

      添加一个 Makefile Target 配置
    • 在设置中,您可以设置多个目标以运行,提供额外的参数,并根据需要调整其他参数。 有关更多信息,请参阅 参考页面。

      一个 Makefile Target 配置
    • 请点击 Apply 以保存更改。

    WSL 特性

    同步设置

    在使用 WSL 时,请确保同步每个项目的工具链设置和全局 生成 设置:

    1. 转到 设置 | 构建、执行、部署 | 构建工具 | Make。

    2. 点击 Make 可执行文件的路径 旁边的选择器,并设置 WSL 的 make 路径:

      在 WSL 中选择 make 的路径

    非 root WSL 用户

    如果您在非 root WSL 用户下工作,则应将此用户设置为默认用户,以便拥有 make 进程及其可能创建的所有文件的所有权。

    1. 在您的 WSL 客户端中创建一个 /etc/wsl.conf 文件,并添加以下行:

      [user] default=username

      这里, username 是 WSL 客户端用户名(可能与 Windows 用户名不同)。

      在 WSL 文档 中了解更多信息。

    2. 重启 WSL 机器。

    故障排查

    确保启用了 Makefile 和 Makefile 语言 插件。 检查 设置 | 插件 中的 已安装 选项卡。

    Makefile 支持插件

    如果您的项目未正确加载,请尝试以下提示:

    • 检查 Makefile 设置:

      1. 请确保选择适当的工具链。 您的项目应在所选环境中成功构建。

      2. 参数 和 构建目标 可能需要根据您的项目进行调整。

    • 从主菜单中调用 工具 | Makefile | 清理并重新加载 Makefile 项目 或在构建工具窗口中点击 清理并重新加载图标。

    • 如果您的项目的 Makefile 是由 Premake 生成的,请尝试从根 Makefile 中移除 --no-print-directory 参数。

    • 如果上述方法均无效,请尝试从系统目录中的 /makefiles 清理项目缓存(例如, ~/Library/Caches/JetBrains/CLion2020.2/makefiles/postgrtipes.dc29ef09 ),然后 重新加载 项目。

    当前限制和未来计划

    2026年 7月 15日