前期准备
1.CentOS联网
配置CentOS能够连接外网。
注意:采用root用户编译,减少文件夹权限出现的问题。
2.jar包准备
hadoop源码、jdk8、maven、ant、protobuf
(1) hadoop-2.7.2-src.tar.gz
(2) jdk-8u144-linux-64.tar.gz
(3) apache-ant-1.9.9-bin.tar.gz
(4) apache-maven-3.0.5-bin.tar.gz
(5) protobuf-2.5.0.tar.gz
注意:所有操作必须在root用户下完成。
(1) JDK:
解压:
# tar -zxvf jdk-8u144-linux-64.tar.gz
配置环境变量(JAVA_HOME和PATH):
在/etc/profile.d 路径下创建java.sh文件,并写入:
export JAVA_HOME=/opt/jdk1.8.0_144
export PATH=$PATH:${JAVA_HOME}/bin
验证JDK是否配置完成:
# source /etc/profile
# java -version
(2) Maven:
解压:
# tar -zxvf apache-maven-3.0.5-bin.tar.gz
配置环境变量(MAVEN_HOME和PATH):
在/etc/profile.d路径下创建maven.sh文件,并写入:
export MAVEN_HOME=/opt/apache-maven-3.0.5
export PATH=$PATH:${MAVEN_HOME}/bin
验证:
# source /etc/profile
# mvn -version
(3) Ant:
解压:
# tar -zxvf apache-ant-1.9.9-bin.tar.gz
配置环境变量(ANT_HOME和PATH):
在/etc/profile.d路径下创建ant.sh文件,并写入:
export ANT_HOME=/opt/apache-ant-1.9.9
export PATH=$PATH:${ANT_HOME}/bin
验证:
# source /etc/profile
# ant -version
(4) 安装glibc-headers和g++
# yum install -y glibc-headers
# yum install -y gcc-c++
(5) 安装make和cmake
# yum install -y make
# yum install -y camke
(6) 安装protobuf,依次运行
# tar -zxvf protobuf-2.5.0.tar.gz
# cd /opt/protobuf-2.5.0
# ./configure
# make
# make check
# make install
# ldconfig
在/etc/profile.d路径下创建protobuf.sh文件,并写入:
export LD_LIBRARY_PATH=/opt/protobuf-2.5.0
export PATH=$PATH:${LD_LIBRARY_PATH}
验证:
# source /etc/profile
# protobuf --version
(7) 安装OpenSSL库
# yum install -y openssl-devel
(8) 安装ncurses-devel库
# yum install -y ncurses-devel
编译源码
(1) 解压源码
# tar -zxvf hadoop-2.7.2-src.tar.gz
(2) 进行hadoop源码主目录
# cd /opt/hadoop-2.7.2-src
(3) 通过maven执行编译命令
# mvn package -Pdist,native -DskipTests -Dtar
(4) 编译的hadoop包的位置
/opt/hadoop-2.7.2-src/hadoop-dist/target下
标签:tar,gz,hadoop,编译,源码,export,HOME,PATH
From: https://www.cnblogs.com/Lyiu7/p/16800749.html