Apache官网提供了Hadoop2.5.1已编译的程序,但是在Centos6.5上安装成功后,每当运行hadoop fs *命令的时候总是会出现如下警告,虽说不影响运行结果,总是感觉影响心情。
因此搜集了一些资料,自己编译源码。比想象中的简单很多,只是在使用JDK的时候因为用了JDK1.8因此出现了一次错误,换成1.7就OK了,下面是安装记录。
WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
1.编译环境
Centos6.5(64bit)
jdk7
ant1.9.4
maven3.1.1
findbugs3.0.0
protobuf2.5.0
hadoop2.5.1 源代码文件
2.安装以上所需的所有软件
2.1yum可安装的软件
yum install svn ncurses-devel gcc* lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel
2.2安装JDK
rpm -ivh jdk-7-linux-x64.rpm
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0
export JRE_HOME=/usr/java/jdk1.7.0/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
2.3安装ant
tar zxvf apache-ant-1.9.4-bin.tar.gz
vim /etc/profile
export ANT_HOME=/usr/local/apache-ant-1.9.4
export PATH=$PATH:$ANT_HOME/bin
2.4安装findbugs
tar zxvf findbugs-3.0.0.tar.gz
vim /etc/profile
export FINDBUGS_HOME=/usr/local/findbugs-3.0.0
export PATH=$PATH:$FINDBUGS_HOME/bin
2.5安装protobuf
tar zxvf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0
./configure --prefix=/usr/local
make && make install
2.6安装maven
tar -zxvf apache-maven-3.1.1-bin.tar.gz
vim /etc/peofile
export M2_HOME=/usr/local/apache-maven-3.1.1
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
3.编译hadoop源码
tar zxvf hadoop-2.5.1-src.tar.gz
cd hadoop-2.5.1-src
mvn package -Pdist,native,docs -DskipTests -Dtar
最后的文件就在hadoop-2.5.1-src/hadoop-dist/target
中 。