博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从零教你在Linux环境下(ubuntu 12.04)如何编译hadoop2.4
阅读量:4255 次
发布时间:2019-05-26

本文共 4954 字,大约阅读时间需要 16 分钟。

一、首先下载hadoop源码包
下载的方式还是比较多的

1.svn的方式
svn下载首先需要安装SVN,如果想尝试使用svn,可以参考
,hadoop的svn下载地址

2.压缩包的方式
这里我们介绍一种压缩包的方式。

首先我们登录官网:

,我们找到下面链接,点进去下载即可。如果刚接触,不知道怎么下载,可以查看帖子
,里面介绍的很详细。




二、解压
  1. aboutyun@master:~$ tar zxvf hadoop-2.4.0-.tar.gz 
复制代码
解压完毕,我们会看到相应的文件夹:

 



三、解压完毕,我们开始准备编译所需要的软件
这里软件的准备,很多文章写的都不全,这里整理一下。哪些软件是需要安装的。

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

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


(1)jdk下载

链接: 
 密码: rawv

(2)jdk解压

  1. tar zxvf jdk-7u51-linux-x64.tar.gz
复制代码
然后重命令为:

 


(3)配置环境变量:

如下图所示红字部分为:(记得这里的路径改成自己的实际安装路径)

  1. /usr/1.7/bin
复制代码


 




(4)检验是否安装成功

 



2、maven的安装

  1. sudo apt-get install maven
复制代码
我这里已经安装

 


上面可能还需要配置
之类的,但是我这里没有好像是系统自带的,网上的资料也比较多,注意maven的版本,我这里是3.0.4,hadoop2.4需要maven的这个版本或则更高的版本3.2.1版本也是可以的。

验证安装是否成功

  1. mvn -version
复制代码


 



3.protobuf的安装
为防止出错,这里补充一些内容,

3.1先安装g++
  1. sudo apt-get install g++
复制代码



(1)下载


  1. sudo wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz
复制代码
由于google不能访问,可以从网盘下载链接:
 密码:xgiu


(2)解压

  1. tar zxvf protobuf-2.5.0.tar.gz 
复制代码
如下效果:

 




然后进入protobuf-2.5.0文件夹,进行如下操作:

 


  1. $ sudo ./configure 
  2. $ sudo make 
  3. $ sudo make check 
  4. $ sudo make install 
  5. $ sudo ldconfig 
复制代码
修改环境变量:

  1. sudo nano /etc/profile
复制代码


  1. export LD_LIBRARY_PATH=~/protobuf-2.5.0
复制代码
LD_LIBRARY_PATH的这里,填写的是protobuf文件的位置


  1. source /etc/profile
复制代码
注意:
配置/etc/profile,在虚拟机重启后,可能配置会失效,所以重启后,需要再次执行source操作。



(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



或则下面链接:



(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
复制代码



四、编译hadoop2.4

上面准备工作已经做的差不多了,我们终于可以开始,记得进入src文件夹下,输入下面命令
  1. mvn package -Pdist,native -DskipTests -Dtar  
复制代码
 



等了40多分钟,ok

 


在目录~/hadoop-2.4.0-
/hadoop-dist/target下有文件:

hadoop-2.4.0.tar.gz


 



更多内容:



问题总结:

这里还需要在补充:

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-/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



或则下面链接:



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的安装即可



4.权限问题


 


解决办法:

(1)加上sudo

(2)通过

  1. ll
复制代码
安装包解压之后,所属用户可能发生变化:


改变用户


sudo chown -R
 aboutyun:aboutyun hadoop-2.4.0-src

上面aboutyun改成自己的所属组和用户



命令查看是否属于当前用户





转载地址:http://tncei.baihongyu.com/

你可能感兴趣的文章
QA问答系统中的深度学习技术实现
查看>>
NLP专题论文解读:从Chatbot、NER到QA系统...
查看>>
端到端的TTS深度学习模型tacotron(中文语音合成)
查看>>
神经网络在关系抽取中的应用
查看>>
大规模知识图谱的构建、推理及应用
查看>>
揭秘 DeepMind 的关系推理网络
查看>>
概率图模型(PGM)模式推断与概率图流
查看>>
MySQL中REGEXP正则表达式使用大全
查看>>
ArangoDB、Neo4j、OrientDB单机性能比较
查看>>
MFCC(Mel 倒谱系数)
查看>>
python2代码批量转为python3代码
查看>>
贝叶斯优化: 一种更好的超参数调优方式
查看>>
Tensorflow 多任务学习 概念介绍
查看>>
Keras 多任务实现,Multi Loss #########Keras Xception Multi loss 细粒度图像分类
查看>>
#####好好好####从Google Visor到Microsoft NNI再到Advisor调参服务接口发展史
查看>>
tensorflow中的共享变量(sharing variables) 最佳方式variable_scope()命名空间来完成
查看>>
深度增强学习综述
查看>>
###好好好####Tensorflow将模型导出为一个文件及接口设置
查看>>
简明条件随机场CRF介绍(附带纯Keras实现)
查看>>
####好好好#######让Keras更酷一些!Keras模型杂谈
查看>>