前阵子升级hadoop到2.2.0,官方32位的本地库和系统不兼容,亲自编译了一次。网上不少写如何编译hadoop的资料,照着做了几次,终于成功了,踩了几个坑,希望看到这篇文章的人不要再踩同样的坑。
参考这些博文:
http://blog.youkuaiyun.com/bamuta/article/details/13506893
http://blog.youkuaiyun.com/canlets/article/details/18709969
https://issues.apache.org/jira/browse/HADOOP-10110
http://blog.youkuaiyun.com/bamuta/article/details/13506843
http://blog.youkuaiyun.com/iloveyin/article/details/28909771 oscent
http://www.linuxidc.com/Linux/2013-11/93080.htm
http://blog.youkuaiyun.com/w13770269691/article/details/16883663/
编译过程不断遇到问题,第一次卡在
[INFO] Apache Hadoop Common ............................... FAILURE
第二次卡在
[INFO] Apache Hadoop Pipes ................................ FAILURE [ 0.457 s]
静下心来仔细看错误日志,对着源码看,最终发现每次编译错误,都是因为依赖的环境没有安装成功。
重新一个一个安装,仔细检查哪个没有安装成功:
yum install svn
yum install autoconfautomake libtool cmake
yum install ncurses-devel
yum install openssl-devel
yum install gcc*
原来是没有openssl-devel 这个东西,从另外一篇文章找到这个的时候才恍然大悟:
yum install cmake lzo-devel zlib-devel gcc autoconf automake libtool ncurses-devel openssl-deve
原来是把
openssl-deve
这个的名字拼错了。
环境问题的确让人头疼,一直也没有找到啥好办法,还是需要多看看错误日志,多找些资料结合着看。每个人的机器环境不一样,尽信书不如无书。也许山穷水尽疑无路的时候,也许再往前走一步,就柳暗花明又一村了。