CLion 2025.2 Help

Autotools

在 CLion 中,您可以处理需要预配置步骤以准备实际 Makefile 的项目。 GNU AutotoolsK构建PERL MakeMaker 的脚本会被自动检测并执行,以获取 Makefile 并加载项目。 CLion 还支持 xmkmf 工具,该工具从 Imakefile 模板生成 Makefile。

Autotools 项目

当您打开一个项目文件夹时,CLion 在以下情况下会将其识别为 Autotools 项目:

  • 如果项目根目录下有 configure.ac configure.in 文件,但不是同时存在。

  • 如果项目根目录下有 Makefile.in Makefile.am 或两者都有。

已经生成的 Makefile 配置 脚本的存在不会影响这一点。

预配置(GNU Autoconf)

如果您的系统上安装了 GNU Autoconfautoreconf 应位于系统 PATH 中),CLion 将首先调用它。

使用 autoreconf 预配置项目

默认情况下,CLion 使用以下命令来配置 Autotools 项目:

which autoreconf && autoreconf --install --force --verbose; /bin/sh configure

您可以根据需要 更改 这组命令(请参见下文)。

控制预配置参数

如果需要,您可以调整预配置命令。

  1. 转到 设置 | 构建、执行、部署 | Makefile

  2. 命令 字段中进行必要的更改:

    预配置命令

    例如,要运行一个额外的预配置脚本,如 bootstrap ,添加以下命令:

    ./bootstrap <args>

    还请注意默认命令集中的第一行, #!/bin/sh。 它明确指定了 POSIX 默认解释器 /bin/sh 。 您可以保持此命令不变,或者将其更改为使用其他解释器,例如 #!/usr/bin/python 用于 Python。

  3. 您还可以在 构建目录 字段中或通过 -C path 标志在 构建选项 中更改构建目录。

    更改构建目录时请注意以下事项:

    • 之前的目录不会被删除。

    • 如果新的构建目录不存在,CLion 会在预配置步骤之前创建它(如果脚本不为空)。 否则,该目录将不会被创建。

更改工具链

  • 执行 Autotools 脚本时,CLion 从 设置 | 构建、执行、部署 | Makefile 中指定的工具链获取编译器。

    如果您第一次打开项目,CLion 将使用默认工具链。

    请注意,您也可以在此处指定远程工具链。

    为 Makefile 项目选择工具链

PERL MakeMaker 项目

MakeMaker 生成的 Makefile 没有单独的 cleandistclean 目标。 只有 clean 目标,它会清理项目树并删除 Makefile 本身。

因此,对于 MakeMaker 项目, make clean 命令应仅作为 预配置 步骤的一部分运行。 CLion 使用以下预配置脚本,您可以根据需要随时 调整

#!/bin/sh # # ExtUtils::MakeMaker template, feel free to customize. # [ -f Makefile ] && "${MAKE:-make}" clean perl Makefile.PL

远程模式限制

  • 在远程模式下, 构建 目录不会同步到本地机器。 请确保手动同步 config.h

远程上的 Windows 特定问题:

  • 当项目上传到远程主机时,行尾不会转换为 UNIX (LF) 格式(CPP-26698)。

  • 上传阶段可能会显示成功完成,但实际上没有文件传输到远程主机(CPP-26700)。

最后修改日期: 2025年 9月 26日