这个经历是自己安装 Facebook 的 watchman (简单说就是文件监视器)才碰到的。
首先我们还原一下踩坑时的场景
第一步
安装 watchman ,当然时看官方的安装说明啦,,let's go to watchman installation
然后就是噼里啪啦一大堆英文,看也看不懂(其实只是烦,仔细看的话还是看的懂的)
所以楼主又根据自己的系统(楼主使用是Linux)找到了合适的安装说明
然而就这么点,我还以为多难
第二步
然后楼主一步一步按照顺序来输入shell 命令
前三步都很顺利,杠杠的,
到了 $ ./autogen.sh 坑就来了
autoconf not command
automake not command
autom4te not command
....总之就是各种命令没找到
我就想,居然这么多依赖没找到,
所以楼主就安装啊
直接 $sudo apt-get install autoconf
接着就顺利完成安装
然后又执行 $ ./autogen.sh
发现又来坑 $ autom4te :need GNU m4 1.4 or later:/path/bin/m4 (需要的m4是>=1.4的)
然后我又执命令:$ m4 --version
m4 (GNU M4) 1.4.18Copyright (C) 2016 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Rene' Seindal.
这。。这。。这。。不是1.4.18吗? (很明显>1.4)
难道是我的姿势不对。。。。。。。╮(╯_╰)╭
然后我就找啊,想啊。突然灵光一线
不是$ autom4te :need GNU m4 1.4 or later:/path/bin/m4 吗?
那么肯定是 autom4te 配置有问题
然后直接 $ sudo gedit /usr/bin/autom4te 打开 autom4te
这里就是有关于autom4te 的 GBU m4 配置信息
发现 autom4te执行m4的路径是 $ENV{"M4"} || '/usr/bin/m4'
有一个默认的路径:ENV{"M4"} (存在即执行) 估计这个路径是m4自带的,而且低版本,所以执行时才会出现 autom4te :needGNU m41.4 or later:/path/bin/m4 的错误
我就直接把路径改成了我的系统安装的GNU m4的路径
然后保存退出
继续执行 $ ./autogen.sh
发现执行顺利。
接着就继续完成
$./configure
$make
$sudo make install
畅通无阻,顺利完成 watchman的安装
这种情况不是所有安装时都会产生的,只是针对某种情况下。
我去耍 watchman 啦 ,,拜拜