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】