编译Hadoop2.6.0-cdh-5.7.0源码支持五种压缩方式

1.编译环境准备

1.先下载源码包hadoop-2.6.0-cdh5.7.0-src.tar.gz,解压后cd进入源码目录下,打开BUILDING.txt,如下图:
在这里插入图片描述
根据文档,准备编译所用环境,本次所用环境如下:
centos6.9
jdk1.7(注:该版本hadoop的编译必须使用jdk1.7)
maven3.3.9版本
Findbugs1.3.9
Protocol2.5.0
hadoop-2.6.0-cdh5.7.0源码包(http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.7.0-src.tar.gz)

以上安装包可网上自行下载
(安装包均放在/home/hadoop/software目录下)
2.安装上述软件并配置环境变量
1)解压jdk-7u51-linux-x64.tar.gz并配置环境变量

	'''
	[root@hadoop001 software]$ cd /usr/
	[root@@hadoop001 usr]$ mkdir java
	[root@hadoop001 software]$ tar -zxvf jdk-7u51-linux-x64.tar.gz -C /usr/java/
	
	按照如下格式将java写入环境变量(有多种方法,/etc/profile, .bash_profile)
	export JAVA_HOME=/usr/java/jdk1.7.0_51
	export PATH=$JAVA_HOME/bin:$PATH
			  
	  
	'''

2)解压maven安装包并配置环境变量

	‘’‘
	[root@hadoop001 software]$ tar -zxvf apache-maven-3.3.9-bin.tar.gz -C /home/hadoop/app
	
	进入到解压好的maven目录下,进入conf目录,编辑setting.xml文件
	[root@hadoop001 ~]$ vi /home/hadoop/app/apache-maven-3.3.9/conf/settings.xml		
		
	export MAVEN_HOME=/home/hadoop/app/apache-maven-3.3.9
	export PATH=$MAVEN_HOME/bin:$PATH

3)解压protocol并添加环境变量

	'''
	[root@hadoop001 ~]# tar -zxvf /home/hadoop/software/protobuf-2.5.0.tar.gz -C /usr/local
	export PROTOC_HOME=/usr/local/protobuf
	export PATH=$PROTOC_HOME/bin:$PATH
	
	预编译安装:
	进入/usr/local/protobuf
	[root@hadoop001 protobuf-2.5.0]# yum install -y gcc gcc-c++ make cmake
	[root@hadoop001 protobuf-2.5.0]# ./configure --prefix=/usr/local/protobuf
	[root@hadoop001 protobuf-2.5.0]# make && make install

4)解压findbugs并添加环境变量

  ‘’‘
  [root@hadoop001 software]$ unzip apache-maven-3.3.9-bin.zip findbugs-1.3.9.zip -d /home/hadoop/app
  如果没装过unzip,使用yum install装一个即可
  export FINDBUGS_HOME=/home/hadoop/app/findbugs-1.3.9
  export PATH=$FINDBUGS_HOME/bin:$PATH

5)安装各种组件

'''
[root@hadoop001 ~]# yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
[root@hadoop001 ~]# yum install -y snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop autoconf automake

5)查看各个软件的版本

  ‘’‘
  [hadoop@hadoop001 ~]$ java -version
  java version "1.7.0_51"
	
  [hadoop@hadoop001 ~]$ mvn -version
  Apache Maven 3.3.9......

  [hadoop@hadoop001 ~]$ findbugs -version
  1.3.9

  [hadoop@hadoop001 ~]$ protoc --version
  libprotoc 2.5.0

2.开始编译

  '''
  将hadoop源码包解压到/home/hadoop/app目录下
  [root@hadoop001 software]$ tar -zxvf hadoop-2.6.0-cdh5.7.0-src.tar.gz -C /home/hadoop/app
  [root@hadoop001 software]$ cd /home/hadoop/app/hadoop-2.6.0-cdh5.7.0目录下
  [root@hadoop001 hadoop-2.6.0-cdh5.7.0]$ mvn clean package -Pdist,native -DskipTests -Dtar
  
  由于不太懂maven,不同的编译语句报错会不一样,我也没摸索清楚。。。
  最终是如上语句成功的
  
  最终经过漫长等待,编译成功,编译好的压缩包在/hadoop-2.6.0-cdh5.7.0/hadoop-dist/target/  下
  解压该压缩包
  ./hadoop checknative,会发现五种压缩格式均为true,编译成功

猜你喜欢

转载自blog.csdn.net/qq_24363849/article/details/89043071