hadoop2.2.0源码编译(ubuntu)

1:下载相关的软件
A:预安装相关软件包:
mmicky@wyy:/app$ sudo apt-get -y install maven build-essential autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev

B:下载需要的软件
*  hadoop2.2.0_src  http://hadoop.apache.org
* JDK1.6 以上  http://www.oralce.com
* ProtocolBuffer 2.4.1+ (for MapReduce and HDFS)  http://code.google.com/p/protobuf/downloads/list
* findbugs2.0.2 

2:安装findbugs
mmicky@wyy:/app$ sudo tar zxf /home/mmicky/Soft/hadoop/findbugs-2.0.2.tar.gz
mmicky@wyy:/app$ sudo mv findbugs-2.0.2 findbugs202
mmicky@wyy:/app$ vi ~/.bashrc
增加两行:
export FINDBUGS_HOME=/app/findbugs202
export PATH=${FINDBUGS_HOME}/bin:$PATH
mmicky@wyy:/app$ source ~/.bashrc
注意:必须是设置为FINDBUGS_HOME,在编译的时候会引用${FINDBUGS_HOME}变量

3:安装ProtocolBuffer
mmicky@wyy:/app$ sudo tar zxf /home/mmicky/Soft/hadoop/protobuf-2.5.0.tar.gz
mmicky@wyy:/app$ cd protobuf-2.5.0
mmicky@wyy:/app/protobuf-2.5.0$ sudo ./configure
mmicky@wyy:/app/protobuf-2.5.0$ sudo make
mmicky@wyy:/app/protobuf-2.5.0$ sudo make check
mmicky@wyy:/app/protobuf-2.5.0$ sudo make install
mmicky@wyy:/app/protobuf-2.5.0$ protoc --version
protoc: error while loading shared libraries: libprotoc.so.8: cannot open shared object file: No such file or directory
原因:
ubuntu系统/usr/local/lib路径并不包含在LD_LIBRARY_PATH中
解决方法一:
mmicky@wyy:/app/protobuf-2.5.0$ sudo make uninstall
mmicky@wyy:/app/protobuf-2.5.0$ sudo make clean
mmicky@wyy:/app/protobuf-2.5.0$ sudo ./configure --prefix=/usr
mmicky@wyy:/app/protobuf-2.5.0$ sudo make
mmicky@wyy:/app/protobuf-2.5.0$ sudo make check
mmicky@wyy:/app/protobuf-2.5.0$ sudo make install
mmicky@wyy:/app/protobuf-2.5.0$ protoc --version
解决办法二:
mmicky@wyy:/app/protobuf-2.5.0$ sudo vi /etc/ld.so.conf.d/libprotobuf.conf 
增加一行:
/usr/local/lib
mmicky@wyy:/app/protobuf-2.5.0$ sudo ldconfig
mmicky@wyy:/app/protobuf-2.5.0$ protoc --version

4:编译hadoop2.2.0( 编译的时候必须在线,要下载相关的软件包
SNV获取源码地址:http://svn.apache.org/repos/asf/hadoop/common
Gits获取源码地址:git://git.apache.org/hadoop-common.git
mmicky@wyy:/app$ sudo tar zxf /home/mmicky/Soft/hadoop/hadoop-2.2.0-src.tar.gz
mmicky@wyy:/app$ sudo chown -R mmicky:mmicky hadoop-2.2.0-src
mmicky@wyy:/app$ cd hadoop-2.2.0-src/
mmicky@wyy:/app/hadoop-2.2.0-src$
mmicky@wyy:/app/hadoop-2.2.0-src$ mvn clean package -DskipTests -Pdist,native,docs -Dtar
。。。。。漫长的等待中。。。。。
hadoop2.2.0源码编译(ubuntu)_第1张图片
  以上编译没经过测试。

5:编译前最好检查一下maven、ProtocolBuffer、cmake、findbugs、ant是否已经安装,本篇第一步就安装了maven和cmake,所以不需要额外安装。编译好后的hadoop2.2.0的安装包是hadoop220_src/hadoop-dist/hadoop-2.2.0.tar.gz文件

你可能感兴趣的:(hadoop,ubuntu,编译)