autotoolset 年久失修

用autotoolset的时候经常会卡在autoheader这一步,
autoheader: warning: missing template: CXX_HAS_BUGGY_FOR_LOOPS
autoheader: Use AC_DEFINE([CXX_HAS_BUGGY_FOR_LOOPS], [], [Description])
autoheader: warning: missing template: CXX_HAS_NO_BOOL
autoheader: warning: missing template: NDEBUG
autoheader: warning: missing template: YOUR_OS
为了查出原因何在,今天可费了好一翻功夫。
以YOUR_OS为例,它是在m4/lf_host_type.m4中定义的
AC_DEFUN(LF_HOST_TYPE, [
AC_CANONICAL_HOST
if test -z "$host"
then
host=unknown
fi
canonical_host_type=$host
if test "$host" = unknown
then
AC_MSG_WARN(configuring for unknown system type)
fi
AC_SUBST(canonical_host_type)
AC_DEFINE_UNQUOTED(YOUR_OS,"$canonical_host_type")
])
我仔细查了一下autoconf259的手册
-- Macro: AC_DEFINE_UNQUOTED (VARIABLE,
VALUE, [DESCRIPTION])
-- Macro: AC_DEFINE_UNQUOTED (VARIABLE)
没有一个宏接受两个参数。
故,把
AC_DEFINE_UNQUOTED(YOUR_OS,"$canonical_host_type")
修改为
AC_DEFINE_UNQUOTED(YOUR_OS,"$canonical_host_type",[canonical host type])
AC_DEFINE(CXX_HAS_NO_BOOL)修改为
AC_DEFINE(CXX_HAS_NO_BOOL,,[Check whether we have
bool]) ],
就可以了
其他的错误依法炮制。
稍等,过两天我做一个patch出来。
p.s.aclocal的时候会提示很多这样的错误
/usr/local/share/aclocal/gtk.m4:7: warning: underquoted definition of
AM_PATH_GTK
直接忽略即可

此博客中的热门博文

少写代码,多读别人写的代码

在windows下使用llvm+clang

tensorflow distributed runtime初窥