安装Mesa时,最后一个错误报“WARNING: 'aclocal-1.14' is missing on your system.”,虽然是个Warning,但是无法进行下一步make,所以必须解决。根据warning给的提示以及网上搜的信息判断,这是一个时间戳变化导致的系统以为文件被修改,所以需要重新编译几个脚本文件。实际上我从官网下载来的源文件压缩包我根本没动过,应该是解压过程中系统版本不一样或者时间差导致的文件时间戳发生了变化而已(能想到这个,因为我从本机往US的服务器传文件时,解压缩时总是会提示文件的时间戳变为什么什么了,也就是常说的timestamp skew)。这错误比较少见,相关资料实在太少。能Google的都被我Google了,最后还是让我找到了解决方案,记录在这供后来人借鉴以节约时间。
该错误详情:
test@test:/usr/local/src/Mesa_build$ sudo make
CDPATH="${ZSH_VERSION+.}:" && cd /install/Mesa-10.3.5 && /bin/bash /install/Mesa-10.3.5/bin/missing aclocal-1.14 -I m4
/install/Mesa-10.3.5/bin/missing: line 81: aclocal-1.14: command not found
WARNING: 'aclocal-1.14' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
make: *** [/install/Mesa-10.3.5/aclocal.m4] Error 127
很自然的就想到按提示去装那几个autotools,就如这里建议的:http://stackoverflow.com/questions/24233721/build-m4-autoconf-automake-libtool-on-unix
You do not need to install the autotools. Most likely, the problem is caused by a timestamp skew and some files in the pcre tarball have been unpacked with incorrect timestamps. (This often happens if you unpack the tarball on a network drive.)Trying to recreate the configure script using the autotools is not the simplest solution.
解决方法如下:
-
用Synaptic Package Manager搜索安装这些库(显然有些是重复的,当时不清楚用哪个索性全添加了):
autotools-dev
automake
autoconf2.13
m4