静态网站制作wordpress模版,一流专业建设规划,ui特效网站,改网站字体颜色代码目录
1、安装gcc
1.1、查看是否含有gcc及gcc版本
1.2、快速安装gcc
2、升级gcc
2.1、下载gcc源码包并解压缩
2.2、下载编译依赖项
2.3、新建gcc-bulid目录#xff08;与gcc-10.5.0同级#xff09;并进入该目录中
2.4、生成Makefile文件
2.5、开始编译
2.6、安装
2…目录
1、安装gcc
1.1、查看是否含有gcc及gcc版本
1.2、快速安装gcc
2、升级gcc
2.1、下载gcc源码包并解压缩
2.2、下载编译依赖项
2.3、新建gcc-bulid目录与gcc-10.5.0同级并进入该目录中
2.4、生成Makefile文件
2.5、开始编译
2.6、安装
2.7、重启
2.8、验证
3、依赖新的版本
3.1 、进入/usr/lib64目录
3.2、拷贝libstdc.so.6.0.28到系统/usr/lib64目录下
3.3、修改文件权限
3.4、备份原libstdc.so.6软连接
3.5、创建新的软连接连接到新的库
3.6、验证依赖是否更新
3.7、验证新的库是否生效 可能遇到的问题 1、/lib64/libstdc.so.6: version GLIBCXX_3.4.21 not found问题 2、编译报错error: const char* libc_name_p [INFO ]
[INFO ] Installing final gcc compiler
[EXTRA] Configuring final gcc compiler
[EXTRA] Building final gcc compiler
[ERROR] cfns.gperf:101:1: error: const char* libc_name_p(const char*, unsigned int) redeclared inline with gnu_inline attribute
[ERROR] make[3]: *** [cp/except.o] Error 1
[ERROR] make[2]: *** [all-gcc] Error 2
[ERROR] make[1]: *** [all] Error 2
[ERROR] 1、安装gcc
由于 Linux 操作系统的自由、开源在其基础上衍生出了很多不同的 Linux 操作系统如 CentOS、Ubuntu、Debian 等。这些 Linux 发行版中大多数都默认装有 GCC 编译器版本通常都较低。
1.1、查看是否含有gcc及gcc版本
[rootlocalhost ~]# gcc -v
Using built-in specs.
COLLECT_GCCgcc
COLLECT_LTO_WRAPPER/usr/local/libexec/gcc/x86_64-pc-linux-gnu/6.5.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../../gcc-6.5.0/configure --prefix/usr/local --enable-checkingrelease --enable-languagesc,c --disable-multilib
Thread model: posix
gcc version 6.5.0 (GCC)
[rootlocalhost ~]#
可以看到系统中包含了gcc且版本为6.5.0如果没有gcc可以通过下面命令来进行安装
1.2、快速安装gcc
yum -y install gcc
yum -y install gcc-c
通过如上命令得到的gcc通常版本较低。
2、升级gcc
升级gcc需要在系统中包含一个低版本的gcc
2.1、下载gcc源码包并解压缩
下载地址gnu-gcc安装包下载_开源镜像站-阿里云可以手动下载也可以通过wget直接下载到服务器上
# 进入目录
cd /usr/local
# 下载源码
wget https://mirrors.aliyun.com/gnu/gcc/gcc-10.5.0/gcc-10.5.0.tar.gz
# 解压缩
tar -zxvf gcc-10.2.0.tar.gz
# 进入gcc源码目录
cd gcc-10.5.0/
2.2、下载编译依赖项
./contrib/download_prerequisites
执行完毕后可以发现gcc-10.5.0的目录中多了gmp、isl、mpc、mpfr如果没有这些依赖包则不能进行下面的操作。
2.3、新建gcc-bulid目录与gcc-10.5.0同级并进入该目录中
mkdir gcc-build
cd gcc-build/
2.4、生成Makefile文件
../gcc-10.5.0/configure --prefix/usr/local --enable-checkingrelease --enable-languagesc,c --disable-multilib
这时候如果出现报错
checking for the correct version of gmp.h... no configure: error: Building GCC requires GMP 4.2, MPFR 3.1.0 and MPC 0.8.0.
解决办法执行以下命令
yum -y install gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel
再次运行命令就成功了
../gcc-10.5.0/configure --prefix/usr/local --enable-checkingrelease --enable-languagesc,c --disable-multilib
2.5、开始编译
make
注意编译时间较长请选择适当的时间进行此操作。
GCC高版本编译低版本GCC报错 [INFO ]
[INFO ] Installing final gcc compiler
[EXTRA] Configuring final gcc compiler
[EXTRA] Building final gcc compiler
[ERROR] cfns.gperf:101:1: error: const char* libc_name_p(const char*, unsigned int) redeclared inline with gnu_inline attribute
[ERROR] make[3]: *** [cp/except.o] Error 1
[ERROR] make[2]: *** [all-gcc] Error 2
[ERROR] make[1]: *** [all] Error 2
[ERROR]
解决办法修改要编译的GCC代码参考链接如下
https://gcc.gnu.org/git/?pgcc.git;acommitdiff;hec1cc0263f156f70693a62cf17b254a0029f4852
2.6、安装
make install
2.7、重启
2.8、验证
[rootlocalhost ~]# gcc -v
Using built-in specs.
COLLECT_GCCgcc
COLLECT_LTO_WRAPPER/usr/local/libexec/gcc/x86_64-pc-linux-gnu/10.5.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../../gcc-10.5.0/configure --prefix/usr/local --enable-checkingrelease --enable-languagesc,c --disable-multilib
Thread model: posix
gcc version 10.5.0 (GCC)
[rootlocalhost ~]#
3、依赖新的版本
3.1 、进入/usr/lib64目录
cd /usr/lib64
3.2、拷贝libstdc.so.6.0.28到系统/usr/lib64目录下
cp /usr/local/lib64/libstdc.so.6.0.28 .
3.3、修改文件权限
chmod 755 libstdc.so.6.0.28
3.4、备份原libstdc.so.6软连接
mv libstdc.so.6 libstdc.so.6-bak
3.5、创建新的软连接连接到新的库
ln -s libstdc.so.6.0.28 libstdc.so.6
3.6、验证依赖是否更新
ll libstd*
[rootlocalhost lib64]# ll libstd*
lrwxrwxrwx. 1 root root 19 Jul 14 20:05 libstdc.so.6 - libstdc.so.6.0.22
-rwxr-xr-x. 1 root root 995840 Sep 29 2020 libstdc.so.6.0.19
-rwxr-xr-x. 1 root root 11541760 Jul 14 20:04 libstdc.so.6.0.22
-rwxr-xr-x. 1 root root 16833120 Jul 14 04:46 libstdc.so.6.0.28
lrwxrwxrwx. 1 root root 19 Feb 9 2022 libstdc.so.6-bak - libstdc.so.6.0.19
lrwxrwxrwx. 1 root root 19 Jul 14 04:48 libstdc.so.6-bak.bak - libstdc.so.6.0.28
[rootlocalhost lib64]#
3.7、验证新的库是否生效
strings /usr/lib64/libstdc.so.6|grep GLIBCXX
[rootlocalhost lib64]# strings /usr/lib64/libstdc.so.6|grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
jdk下载Index of java-local/jdk