我在configure.ac中有以下内容:
AC_CHECK_PROGS(MAKE,$MAKE make gmake,error)
if test "x$MAKE" = "xerror" ;then
AC_MSG_ERROR([cannot find a make command])
fi
Run Code Online (Sandbox Code Playgroud)
这已经在我们的项目中很长一段时间了,但在一些设置中,我得到这个错误:
configure.ac:45: error: possibly undefined macro: AC_MSG_ERROR
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
Run Code Online (Sandbox Code Playgroud)
最近在上面添加的行:
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释导致此错误的原因以及如何追踪问题?
编辑:添加有关差异的详细信息.
有效的盒子:
uname -a Linux host1 2.6.38-13-generic #53-Ubuntu SMP Mon Nov 28 19:33:45 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
automake: 1.11.1
autoconf: 2.67
m4: 1.4.14
libtoolize: 2.2.6b
Run Code Online (Sandbox Code Playgroud)
不起作用的盒子:
Linux host2 2.6.32-35-generic-pae #78-Ubuntu SMP Tue Oct 11 17:01:12 UTC …Run Code Online (Sandbox Code Playgroud) 我在尝试构建libnice-0.1.10时遇到了这样的错误.对于解决方案,我遵循可能未定义的宏:AC_MSG_ERROR,但仍然没有到达那里.
一些程序版本
uname: 3.5.0-23-generic
m4: 1.4.16
automake: 1.14.1
autoconf: 2.69
libtoolize: 2.4.2
Run Code Online (Sandbox Code Playgroud)
我还在bashrc中添加了ACLOCAL_FLAGS =" - I /.../share/aclocal".
以下是autogen报道的内容.
$ ./autogen.sh
configure.ac:331: warning: PKG_PROG_PKG_CONFIG is m4_require'd but not m4_defun'd
m4/gtk-doc.m4:7: GTK_DOC_CHECK is expanded from...
configure.ac:331: the top level
configure.ac:331: warning: PKG_PROG_PKG_CONFIG is m4_require'd but not m4_defun'd
m4/gtk-doc.m4:7: GTK_DOC_CHECK is expanded from...
configure.ac:331: the top level
configure.ac:331: warning: PKG_PROG_PKG_CONFIG is m4_require'd but not m4_defun'd
m4/gtk-doc.m4:7: GTK_DOC_CHECK is expanded from...
configure.ac:331: the top level
libtoolize: putting auxiliary files in `.'.
libtoolize: …Run Code Online (Sandbox Code Playgroud)