编译autoconf会导致版本报告不正确

时间:2018-05-30 00:13:21

标签: makefile autoconf automake autoreconf

我想从autoconf 2.62更新到2.69。

我下载了源代码并运行了以下内容:

./configure
make
make install

这些都成功完成。

当我运行autoconf --version时,我得到以下内容:

autoconf --version
autoconf (GNU Autoconf) ?K??
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+/Autoconf: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David J. MacKenzie and Akim Demaille.

您在此处看到的问题是版本报告为?K ??

为什么会这样?我的机器在EBCDIC代码页中运行,我想知道这是否可以关联。是否需要添加配置/ make选项。

这个问题使我无法编译其他软件,因为配置脚本会检查版本autoconf报告,并最终导致检查失败。

----- ------- UPDATE 我按要求运行make check,这是输出:

autoconf269: >make check
make  check-recursive
Making check in bin
Making check in .
Making check in lib
Making check in Autom4te
Making check in m4sugar
make  check-local
Making check in autoconf
make  check-local
Making check in autotest
make  check-local
Making check in autoscan
Making check in emacs
Making check in doc
make: Makefile: line 436: Warning -- FSUM9433 Duplicate entry [fdl.texi] in prerequisite list
Making check in tests
make  check-local
cd ../lib/autotest && make  autotest.m4f
`autotest.m4f' is up to date
autom4te_perllibdir='..'/lib                     AUTOM4TE_CFG='../lib/autom4te.cfg'         ../bin/autom4te  -B '..'/lib -B '..'/lib --language=autotest -I . -I . suite.at -o ./testsuite.tmp
m4:local.at:18: bad expression in eval (bad input): ((?+1+0) > (2+0)) - ((?+1+0) < (2+0))
autom4te: /workarea/tools/m4/bin/m4 failed with exit status: 1
FSUM8226 make: Error code 1 
FSUM8226 make: Error code 255 
FSUM8226 make: Error code 1 
FSUM8226 make: Error code 255 

我的眼睛被吸引到:m4:local.at:18: bad expression in eval (bad input): ((?+1+0) > (2+0)) - ((?+1+0) < (2+0)) - 为什么这可能被认为是一个坏表达的任何想法?

1 个答案:

答案 0 :(得分:2)

一种可能性:您编译的autoconf安装到/ usr / local,而预安装的是在/ usr中。 / usr是PATH中的第一个,因此使用了预先安装的。

您还可以在运行make install之前检​​查版本,以确保新版本修复了您的问题。