- 0
- 0
- 约1.77千字
- 约 3页
- 2025-12-24 发布于北京
- 举报
编译hadoop源码
前言
为什么要编译hadoop源码?
我们知道在64位机器上需要编译源码,可是为什么要编译源码,编译源码后,会有什么效
果。
1.为什么需要编译Java文件?
你写出来的都是*.JAVA文件,JVM能执行的都是*.CLASS文件,所以需要编译
2.为什么要编译hadoop文件?
只有编译后的hadoop,才能被就jvm执行,才能被安装
3.hadoop是Java文件,Java文件不是一处编译,处处运行的吗?为什么还要编译?
处处运行是有前提条件的,就是有虚拟机执行,虚拟机分为两种32位,64位。
如果是32虚拟机编译的文件,只能运行于32虚拟机
如果是64虚拟机编译的文件,只能运行于64虚拟机
所以只了32位虚拟机运行的,如果我们安装的是64位虚拟机,所以我们就需要
在64位虚拟机下重新编译:
编译过程
1.maven(apache-maven-3.3.3-bin.tar.gz)
2.安装maven
tar-zxvfapache-maven-3.3.3-bin.tar.gz-C/usr/local
3.添加环境变量
vim/etc/profile或者.bash_profile文件
exportJAVA_HOME=/usr/java/jdk1.8.0_20
exportHADOOP_HOME=/home/ncms/bigdata/hadoop-2.6.0
4.exportM2_HOME=/home/ncms/apache-maven-3.3.3
exportPATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/
sbin:$M2_HOME/bin
5.加载环境变量
source/etc/proflie
mvn–version
6.protobuf
(或
/fi/protobuf-2.5.0.tar.gz)
7安装protobuf编译依赖,为了编译安装protoc,需要使用YUM几个依赖的工具
yuminstall-ygccgcc-c++make
8.解压安装protobuf
tar-zxvfprotobuf-2.5.0.tar.gz
cdprotobuf-2.5.0
./configure--prefix=/usr/local/protoc/
makemakeinstall
9将添加到环境变量
vim/etc/profile
exportPATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/s
bin:$M2_HOME/bin:/usr/local/protoc/bin
source/etc/profile
protoc--version
10.安装其他编译依赖
yuminstall-ycmakeopenssl-develncurses-develzlib-devel
11.编译hadoop
(进入文件夹里面,里面有一个文件BUILDINT.txt,打开即可看见里面关于编译hadoop
的一些环境要求)
tar-zxvfhadoop-2.6.0-src.tar.gz
cdhadoop-2.6.0-src
mvnpackage-Pdist,native-DskipTests-Dtar
12.查看编译好的安装包
cdhadoop-2.6.0-src/hadoop-dist/target
原创力文档

文档评论(0)