【问题标题】:possibly undefined macro: AC_SUBST可能未定义的宏:AC_SUBST
【发布时间】:2016-12-16 10:21:27
【问题描述】:

我正在尝试构建一个项目,但它抛出了一个错误:

autoreconf: running: /usr/bin/autoconf --force
configure.ac:19: error: possibly undefined macro: AC_SUBST
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1

我对构建工具非常陌生,这就是为什么这个错误让我发疯的原因。

谁能帮我弄清楚我应该怎么做才能解决这个问题?

编辑:configure.ac 中的对应行是:

嘿,我仍然无法弄清楚我的 configure.ac 出了什么问题。 我的 configure.ac 看起来像这样:

PKG_CHECK_MODULES(libcurl, libcurl)

AP_VERSION=2.2.4
AP_CHECK_APACHE([$AP_VERSION], [
  LIBTOOL="`$APR_CONFIG --apr-libtool`"
  AC_SUBST([LIBTOOL])

  MODULE_CFLAGS="$AP_CFLAGS"
  AC_SUBST([MODULE_CFLAGS])

  MODULE_LDFLAGS="`$APR_CONFIG --link-libtool` `$APU_CONFIG --link-libtool`"
  AC_SUBST([MODULE_LDFLAGS])

  BIN_LDFLAGS="`$APR_CONFIG --link-libtool` `$APU_CONFIG --link-libtool` `$APR_CONFIG --ldflags --libs` `$APU_CONFIG --ldflags --libs`"
  AC_SUBST([BIN_LDFLAGS])

  prefix="$AP_PREFIX"
], AC_MSG_ERROR([*** Apache version $AP_VERSION not found!]))

它在 AC_SUBST([LIBTOOL]) 处中断。请帮忙

【问题讨论】:

    标签: autoconf libtool autoreconf


    【解决方案1】:

    apt install pkg-config m4 libtool automake autoconf

    【讨论】:

    • 分享可执行命令时,请务必解释清楚该命令的作用以及为什么可以使用它来解决作者的问题。要求用户在没有上下文的情况下执行命令可能很危险。
    • 不适用于我,安装了所有这些 pkg,仍然失败并出现相同的错误。
    • 谢谢,它有效。在我的情况下缺少 pkg-config。
    【解决方案2】:

    这是autoconf 容易失败的不幸方式。检查最后一个调用 before AC_SUBST 的宏,那是真正的未定义宏。

    【讨论】:

    • 嗨,Diego 感谢您的帮助,但我仍然无法弄清楚我的 configure.ac 出了什么问题。您可以在上面的问题中查看我的 configure.ac。
    • 我希望问题在于 AP_CHECK_APACHE 不可用。有两个项目引用了这个宏(都在 GitHub 上),并且都将它放在 m4/ 目录中的 m4 文件中。两者都有不同的生成脚本,但如果你忽略它们并执行autoreconf -fis -I m4,它应该可以正常工作
    猜你喜欢
    • 2019-05-07
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-19
    • 1970-01-01
    • 2018-06-14
    相关资源
    最近更新 更多