Linux 命令速查
开发工具 man aclocal

aclocal

生成 autoconf 使用的 aclocal.m4 宏文件

返回

补充说明

aclocal 是 GNU Automake 工具链的一部分,负责扫描 configure.ac、acinclude.m4 以及系统 m4 宏目录,把所有被引用的第三方宏汇总生成 aclocal.m4,供后续 autoconf 展开。典型构建流程是:aclocal → autoheader → autoconf → automake --add-missing。

当项目使用了 PKG_CHECK_MODULES、AM_* 等宏却提示 “possibly undefined macro” 时,往往是没有正确执行 aclocal -I m4,或对应宏包(如 pkg-config、libtool)未安装。

语法

aclocal [选项]

选项

  • -I DIR:追加宏搜索目录,可重复
  • --output=FILE:指定输出文件,默认 aclocal.m4
  • --print-ac-dir:打印系统宏目录
  • --force:即使文件较新也重新生成
  • --verbose:显示处理过程
  • --help、--version:帮助与版本信息

实例

# 扫描 m4/ 目录下的自定义宏并生成 aclocal.m4
aclocal -I m4

# 查看系统宏安装位置,便于排查缺失宏
aclocal --print-ac-dir

# 从头重新生成构建脚本(aclocal 通常由 autoreconf 调用)
autoreconf -fi

autoreconf -fi 会依次调用 aclocal、libtoolize、autoconf、automake,日常更推荐使用它而不是单独执行 aclocal。

参考链接