我目前正在尝试创建一个安装包,使用 autoconf 生成配置文件。我已经成功地自动生成了这些,但是,当我运行时./configure
,没有生成任何生成文件Makefile.in
。
我的问题是:如何调试此问题以缩小失败的原因?
以下是我在尝试生成 Makefile 时收到的错误消息:
configure: error: cannot find install-sh, install.sh, or shtool
我在升级 autotools 版本时遇到了同样的问题,在我的情况下,configure.ac 文件缺少以下行:
AM_INIT_AUTOMAKE([1.9 foreign])
(插入您需要的任何版本或选项)
然后运行autoreconf --install
。
要回答有关调试的问题:我去查看了类似的 configure.ac 文件并处理了差异,直到错误消失。
首先,检查是否configure.ac
包含以下内容:
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
否则它不会为您创建生成文件。
如果不是这样,config.log
应该有关于出了什么问题的线索。
想通了,原来我需要从配置文件中删除 ac_dirs,这解决了问题
我遇到了这个问题,发现这是由于以下行configure.ac
:
AC_CONFIG_AUX_DIR([build-aux])
该行本身还不错,但是需要将其移近configure.ac
文件顶部。