【问题标题】:autoconf not generating makefile?autoconf不生成makefile?
【发布时间】:2012-06-28 21:41:15
【问题描述】:

我目前正在尝试创建一个安装包,使用 autoconf 生成配置文件。我已经成功地自动生成了这些,但是,当我运行./configure 时,没有从Makefile.in 生成任何makefile。

我的问题是:如何调试此问题以缩小失败的原因?

以下是我在尝试生成 Makefile 时收到的错误消息:

configure: error: cannot find install-sh, install.sh, or shtool 

【问题讨论】:

  • 更多 Autoconf 垃圾。该项目应该消亡并被烧毁,这样更好的东西才能成长。

标签: unix configure autoconf


【解决方案1】:

我在升级 autotools 版本时遇到了同样的问题,在我的情况下,configure.ac 文件缺少以下行:

AM_INIT_AUTOMAKE([1.9 foreign])

(插入您需要的任何版本或选项)

然后运行autoreconf --install

回答有关调试的问题:我去查看了类似的 configure.ac 文件并解决了差异,直到错误消失为止。

【讨论】:

  • 答案如何?究竟是什么修复了它?
  • 好点。我重新阅读了原始问题(而不是我正在解决的问题)并添加了说明。
  • 在我的情况下,这条线已经存在,autoreconf --install 是解决问题所需要的全部。
【解决方案2】:

首先,检查configure.ac 是否包含以下内容:

AC_CONFIG_FILES([Makefile])
AC_OUTPUT

否则它不会为你创建 makefile。

如果不是这样,config.log 应该知道出了什么问题。

【讨论】:

  • 以上是在configure.ac中生成的,问题是我不知道我在config.log中寻找什么
  • 这里有一条错误消息,我发现 configure: error: cannot find install-sh, install.sh, or shtool
【解决方案3】:

想通了,原来我需要从配置文件中删除 ac_dirs,这解决了问题

【讨论】:

  • 你可能想接受一个答案,如果它是最好的,那就是你的。
【解决方案4】:

我遇到了这个问题,发现是因为configure.ac中的以下行:

AC_CONFIG_AUX_DIR([build-aux])

该行本身还不错,但是需要将其移到靠近configure.ac 文件顶部的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 2013-07-18
    • 1970-01-01
    • 2011-05-14
    相关资源
    最近更新 更多