编译Hadoop 2.4.1完整步骤

编译Hadoop 2.4.1完整步骤

因为下载的bin包中的lib是32位的,64位的CentOS调用不上,只能自己动手编译一下了。
编译挺简单,下载依赖包比较花时间。
以下环境都是在CentOS 6.5 Mini。

安装jdk

下载 server-jre-7u67-linux-x64.gz

1
2
tar zxf server-jre-7u67-linux-x64.gz -C /opt/
ln -s jdk1.7.0_67 jdk

配置vi /etc/profile
最后添加

1
2
export JAVA_HOME=/opt/jdk
export PATH=$PATH:$JAVA_HOME/bin

安装Maven

1
2
wget http://apache.fayea.com/apache-mirror/maven/maven-3/3.2.2/binaries/apache-maven-3.2.2-bin.tar.gz
tar zxf apache-maven-3.2.2-bin.tar.gz -C /opt/

配置vi /etc/profile
最后添加

1
2
export MAVEN_HOME=/opt/apache-maven-3.2.2
export PATH=$PATH:$MAVEN_HOME/bin

安装ant

1
2
wget http://mirror.bit.edu.cn/apache/ant/binaries/apache-ant-1.9.4-bin.tar.gz
tar zxf apache-ant-1.9.4-bin.tar.gz -C /opt/

配置vi /etc/profile
最后添加

1
2
export ANT_HOME=/opt/apache-ant-1.9.4
export PATH=$PATH:$ANT_HOME/bin

安装项目的系统依赖

1
2
3
4
yum install gcc
yum install gcc-c++
yum install autoconf automake libtool cmake
yum install zlib-devel openssl-devel

安装protobuf

下载,解压

1
2
3
4
5
6
wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz
tar zxf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0
./configure
make
make install

下载源代码,解压

1
2
wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.4.1/hadoop-2.4.1-src.tar.gz
tar zxf hadoop-2.4.1-src.tar.gz

编译Hadoop

不编译doc,跳过单元测试

1
2
cd hadoop-2.4.1-src
mvn package -Dmaven.javadoc.skip=true -Pdist,native -DskipTests -Dtar

查看编译的64位lib

1
2
cd hadoop-dist/target/hadoop-2.4.1/lib/native
objdump -f libhadoop.so

结果显示是i386:x86-64,这就是64位的lib了。

END.