从零教你在Linux环境下(ubuntu)如何编译hadoop2.4

问题导读:

1.若是获取hadoop src  maven包?
2.编译hadoop须要装哪些软件?
3.如何编译hadoop2.4?
扩展:
编译hadoop为什么安装这些软件?



本文连接html

http://www.aboutyun.com/thread-8130-1-1.html

1、首先下载hadoop源码包
下载的方式仍是比较多的
1.svn的方式
svn下载首先须要安装SVN,若是想尝试使用svn,能够参考源码管理、获取网络源码工具:TortoiseSVN使用手册,hadoop的svn下载地址点此
2.压缩包的方式
这里咱们介绍一种压缩包的方式。
首先咱们登陆官网:
http://hadoop.apache.org/,咱们找到下面连接,点进去下载便可。若是刚接触,不知道怎么下载,能够查看帖子新手指导:hadoop官网介绍及如何下载hadoop(2.4)各个版本与查看hadoop API介绍,里面介绍的很详细。



2、解压
java

  1. aboutyun@master:~$ tar zxvf hadoop-2.4.0-src.tar.gz 

解压完毕,咱们会看到相应的文件夹:
 


3、解压完毕,咱们开始准备编译所须要的软件
这里软件的准备,不少文章写的都不全,这里整理一下。哪些软件是须要安装的。linux

这里须要说明的是有的Linux有自带的这些工具,这个须要仔细看一下版本是否匹配,不匹配则升级一下,有些不能升级,那么就重装一下吧


一、jdk的安装
步骤下载压缩包、解压、配置环境变量

(1)jdk下载
连接: http://pan.baidu.com/s/1jGr41SU 密码: rawv
(2)jdk解压apache

  1. tar zxvf jdk-7u51-linux-x64.tar.gz

而后重命令为:
 

(3)配置环境变量:
以下图所示红字部分为:(记得这里的路径改为本身的实际安装路径)网络

  1. /usr/jdk1.7/bin



 



(4)检验是否安装成功
 


二、maven的安装
eclipse

  1. sudo apt-get install maven

我这里已经安装
 

上面可能还须要配置环境变量之类的,可是我这里没有好像是系统自带的,网上的资料也比较多,注意maven的版本,我这里是3.0.4,hadoop2.4须要maven的这个版本或则更高的版本3.2.1版本也是能够的。
验证安装是否成功jsp

  1. mvn -version



 


3.protobuf的安装

(1)下载

maven

  1. sudo wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz


(2)解压分布式

  1. tar zxvf protobuf-2.5.0.tar.gz 

以下效果:
 


而后进入protobuf-2.5.0文件夹,进行以下操做:
 

svn

  1. $ sudo ./configure 
  2. $ sudo make 
  3. $ sudo make check 
  4. $ sudo make install 
  5. $ sudo ldconfig 


(3)验证

  1. protoc --version



 


4.安装openssl库

  1. sudo apt-get install libssl-dev  


5.CMake安装

  1. sudo yum install cmake

或则

  1. sudo apt-get install cmake


6.ant安装

(1)首先下载ant
百度网盘: apache-ant-1.9.4-bin.tar.gz
http://pan.baidu.com/s/1c0vjhBy

或则下面连接:
apache-ant-1.9.4-bin.tar.gz

(2)解压

  1. tar zxvf  apache-ant-1.9.4-bin.tar.gz


(3)配置环境变量


以下图所示:
1.打开profile

  1. sudo vi /etc/profile

2.添加下图红字部分,记得修改为本身的路径

 

3.生效

  1. source  /etc/profile


4.检验

  1. ant -version




4、编译hadoop2.4
上面准备工做已经作的差很少了,咱们终于能够开始,记得进入src文件夹下,输入下面命令

  1. mvn package -Pdist,native -DskipTests -Dtar  

 


等了40多分钟,ok
 

在目录~/hadoop-2.4.0-src/hadoop-dist/target下有文件:
hadoop-2.4.0.tar.gz

 


更多内容:hadoop2.4汇总:hadoop2.4插件下载、彻底分布式、伪分布、eclipse插件开发大全


问题总结:
这里还须要在补充:
1.遇到错误1:CMake没有安装

  1. [ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-
  2. plugin:1.6:run (make) on project hadoop-common: An Ant BuildException has 
  3. occured: Execute failed: java.io.IOException: Cannot run program "cmake" (in 
  4. directory "/home/wyf/hadoop-2.0.2-alpha-src/hadoop-common-project/hadoop-
  5. common/target/native"): java.io.IOException: error=2, No such file or directory 
  6. -> [Help 1]
  7. [ERROR] 
  8. [ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
  9. switch.
  10. [ERROR] Re-run Maven using the -X switch to enable full debug logging.
  11. [ERROR] 
  12. [ERROR] For more information about the errors and possible solutions, please 
  13. read the following articles:
  14. [ERROR] [Help 1] 
  15. http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException


解决方法:
CMake没有安装

  1. sudo yum install cmake

或则使用

  1. sudo apt-get install cmake







2.遇到错误2:ant没有安装

  1. ERROR] Failed to execute goal org.codehaus.mojo.jspc:jspc-maven-plugin:2.0-
  2. alpha-3:compile (hdfs) on project hadoop-hdfs: Execution hdfs of goal 
  3. org.codehaus.mojo.jspc:jspc-maven-plugin:2.0-alpha-3:compile failed: Plugin 
  4. org.codehaus.mojo.jspc:jspc-maven-plugin:2.0-alpha-3 or one of its dependencies 
  5. could not be resolved: Could not transfer artifact ant:ant:jar:1.6.5 from/to 
  6. central (http://repo.maven.apache.org/maven2): GET request of: 
  7. ant/ant/1.6.5/ant-1.6.5.jar from central failed: Read timed out -> [Help 1]
  8. [ERROR] 
  9. [ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
  10. switch.
  11. [ERROR] Re-run Maven using the -X switch to enable full debug logging.
  12. [ERROR] 
  13. [ERROR] For more information about the errors and possible solutions, please 
  14. read the following articles:
  15. [ERROR] [Help 1] 
  16. http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException
  17. [ERROR] 
  18. [ERROR] After correcting the problems, you can resume the build with the command
  19. [ERROR]   mvn <goals> -rf :hadoop-hdfs


1.首先下载ant
百度网盘: apache-ant-1.9.4-bin.tar.gz
http://pan.baidu.com/s/1c0vjhBy

或则下面连接:
apache-ant-1.9.4-bin.tar.gz

2.解压

  1. tar zxvf  apache-ant-1.9.4-bin.tar.gz

3.配置环境变量
记得配置环境变量
以下图所示:
1.打开profile

  1. sudo vi /etc/profile

2.添加下图红字部分,记得修改为本身的路径



3.生效

  1. source  /etc/profile


4.检验

  1. ant -version














3.protobuf版本太低,错误现象

  1. [ERROR] Failed to execute goal org.apache.hadoop:hadoop-maven-plugins:2.4.0:prot
  2. oc (compile-protoc) on project hadoop-common: org.apache.maven.plugin.MojoExecut
  3. ionException: 'protoc --version' did not return a version -> [Help 1]
  4. [ERROR]
  5. [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
  6. ch.
  7. [ERROR] Re-run Maven using the -X switch to enable full debug logging.
  8. [ERROR]
  9. [ERROR] For more information about the errors and possible solutions, please rea
  10. d the following articles:
  11. [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionE
  12. xception
  13. [ERROR]
  14. [ERROR] After correcting the problems, you can resume the build with the command
  15. [ERROR]   mvn <goals> -rf :hadoop-common







 


hadoop2.4对应的版本是protobuf-2.5.0


解决办法:按照安装步骤中protobuf的安装便可

相关文章
相关标签/搜索