项目开放过程中,要使用第三方公司的库,他们是在ubuntu18.04上编译的,使用的是glibc2.28版本。
目前本公司的环境是centos7,glibc是2.17版本。因此,要使用第三方的库,就得升级本公司的glibc。
进行glibc的编译前,需要一些准备工作。
解压glibc 后,阅读INSTALL文件,查看需要升级或者安装一些依赖软件。
本机上,gcc 和make 需要手动安装。
其他的yum 安装,就符合版本要求了,yum install texinfo python3 bison libselinux-devel audit-devel gd-devel
gcc需要安装4.9以上的版本,make需要安装4.0以上的版本。
gcc的安装
centos7默认的gcc版本是4.8.5,需要安装大于4.9以上的版本。
gcc4.8已完全支持c++11
gcc6.1已完全支持c++14
gcc7以上的版本完全支持c++17
因为涉及用到一些c++17的特性,故下载gcc7.5.0版本。
tar -xvf gcc-7.5.0.tar.gz
cd gcc-7.5.0
./contrib/download_prerequisites 下载几个依赖包。
不能下载的,可以用wget下载tar包放在gcc-7.5.0下面。
wget https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.5.0.tar.gz wget https://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2 wget https://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz wget http://isl.gforge.inria.fr/isl-0.18.tar.bz2
再执行下./contrib/download_prerequisites
./configure --prefix=/opt/gcc_build/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j10</