hadoop2.x源碼編譯環(huán)境

1.yum安裝一些必要的依賴

yum -y install xz ant zlib zlib-devel cyrus-sasl-devel openssl-devel fuse snappy snappy-devel libzstd libzstd-devel bzip2 bzip2-devel yasm yasm-devel java-1.8.0

2. 安裝maven:

2.1 下載maven包:https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

上傳到機(jī)器上,新建目錄

 mkdir -p /opt/software

將tar包放到此目錄下,解壓:

tar zxvf apache-maven-3.3.9-bin.tar.gz

bin目錄下執(zhí)行驗(yàn)證:

./mvn -v

3. 安裝gcc7.3.1:

3.1

yum -y install gcc libtool gcc-c++

3.2 下載包
gcc-7.3.0.tar.xz
http://mirror.linux-ia64.org/gnu/gcc/releases/gcc-7.3.0/gcc-7.3.0.tar.xz
gmp-6.1.0.tar.bz2
ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
mpc-1.0.3.tar.gz
ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz
mpfr-3.1.4.tar.bz2
ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2

3.3 將所有包上傳到機(jī)器上,/opt/software目錄下解壓:

xz -d gcc-7.3.0.tar.xz
tar -xvf gcc-7.3.0.tar

bzip2 -d gmp-6.1.0.tar.bz2 
bzip2 -d mpfr-3.1.4.tar.bz2

將依賴包拷到gcc目錄下解壓:

cp gmp-6.1.0.tar mpc-1.0.3.tar.gz mpfr-3.1.4.tar gcc-7.3.0/
tar zxvf mpc-1.0.3.tar.gz
tar -xvf mpfr-3.1.4.tar
tar -xvf gmp-6.1.0.tar

配置軟連接

ln -s gmp-6.1.0 gmp
ln -s mpfr-3.1.4 mpfr
ln -s mpc-1.0.3 mpc

3.4 編譯安裝

./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make
make install

3.5 驗(yàn)證

gcc -v

3.6 需要替換老版本的動(dòng)態(tài)庫

檢查動(dòng)態(tài)庫:strings /usr/lib64/libstdc++.so.6 | grep GLIBC

查找編譯gcc時(shí)生成的最新動(dòng)態(tài)庫:find / -name "libstdc++.so*"

將上面的最新動(dòng)態(tài)庫libstdc++.so.6.0.21復(fù)制到/usr/lib64目錄下:
cp /opt/software/gcc-7.3.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24 /usr/lib64

重建默認(rèn)庫的軟連接:
切換工作目錄至/usr/lib64:cd /usr/lib64
刪除舊的軟連接:rm -rf libstdc++.so.6
將默認(rèn)庫的軟連接指向最新動(dòng)態(tài)庫:ln -s libstdc++.so.6.0.24 libstdc++.so.6

重新檢查動(dòng)態(tài)庫:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC

4. 安裝cmake:

4.1 獲取包

wget https://cmake.org/files/v3.3/cmake-3.3.2.tar.gz

4.2 解壓、安裝、校驗(yàn)

tar zxvf cmake-3.3.2.tar.gz

cd cmake-3.3.2

./bootstrap 

gmake

make install

cmake --version

5.安裝protobuf 2.5.0 (只能是這個(gè)版本)

5.1 下載包 protobuf-2.5.0.tar.gz
https://github.com/protocolbuffers/protobuf/releases/tag/v2.5.0

5.2 解壓、安裝

tar zxvf protobuf-2.5.0.tar.gz 

cd protobuf-2.5.0

./configure

make

make check

make install

6. 打包命令:

mvn clean package -Pdist,native -DskipTests -Drequire.snappy -Dsnappy.lib=/usr/lib64 -Dbundle.snappy -Drequire.isal -Disal.lib=/usr/lib64 -Dbundle.isal -Drequire.zstd -Dzstd.lib=/usr/lib64 -Dbundle.zstd -Drequire.openssl -Dopenssl.lib=/usr/lib64 -Dbundle.openssl -Drequire.bzip2 -Dmaven.javadoc.skip=true -Dtar

注意:【內(nèi)存不夠:export MAVEN_OPTS=-Xmx512m】

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容