银河麒麟V10 SP3 升级GCC环境

由于 SuperMap 从12i版本开始,组件底层升级到 GLIBC 2.28 和 GCC 8.3,因此需要对 GLIBC 和 GCC 进行升级。GLIBC 升级比较困难,推荐更换较新的操作系统。下面以 麒麟V10 SP3 为例介绍 GCC 环境升级

银河麒麟V10 SP3 升级GCC环境

    • [1. 检查环境](#1. 检查环境)
    • [2. 升级gcc 环境](#2. 升级gcc 环境)
      • [2.1 拉取gcc源码](#2.1 拉取gcc源码)
      • [2.2 编译源码](#2.2 编译源码)
    • [3 验证编译成果](#3 验证编译成果)
    • [4. 创建软连接,让系统默认使用8.5 gcc](#4. 创建软连接,让系统默认使用8.5 gcc)

1. 检查环境

shell 复制代码
## 检查 glibc版本
[root@kube-admin gcc]# ldd --version
ldd (GNU libc) 2.28
[root@kube-admin gcc]# 

## 检查gcc版本
[root@kube-admin gcc]# gcc --version
gcc (GCC) 7.3.0

2. 升级gcc 环境

2.1 拉取gcc源码

在互联网拉取gcc 源码,可以选取国内镜像源
wget https://mirrors.aliyun.com/gnu/gcc/gcc-8.5.0/gcc-8.5.0.tar.gz,

2.2 编译源码

解压

shell 复制代码
tar -zxvf gcc-8.5.0.tar.gz

创建构建目录(避免在源码目录直接编译)

shell 复制代码
[root@kube-admin gcc]# cd gcc-8.5.0/
[root@kube-admin gcc-8.5.0]# mkdir build & cd build

../configure \
   --prefix=/usr/local/gcc-8.5.0 \
   --enable-languages=c,c++ \
   --disable-multilib \
   --with-gmp=/usr \
   --with-mpfr=/usr \
   --with-mpc=/usr

开始编译

shell 复制代码
make -j$(nproc)

安装到系统

shell 复制代码
make install

添加到系统变量

shell 复制代码
# 添加到 PATH
echo 'export PATH=/usr/local/gcc-8.5.0/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/gcc-8.5.0/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc

# 生效
source ~/.bashrc

3 验证编译成果

shell 复制代码
[root@kube-admin build]# gcc --version
gcc (GCC) 8.5.0
[root@kube-admin build]# g++ --version
g++ (GCC) 8.5.0

4. 创建软连接,让系统默认使用8.5 gcc

shell 复制代码
# 创建软链接(可选)
sudo ln -sf /usr/local/gcc-8.5.0/bin/gcc /usr/local/bin/gcc
sudo ln -sf /usr/local/gcc-8.5.0/bin/g++ /usr/local/bin/g++
相关推荐
博客180014 小时前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝
郝学胜_神的一滴16 小时前
CMake 026:属性体系精讲、四大作用域全解 & 实战代码落地
c++·cmake
Sokach101516 小时前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao1 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
众少成多积小致巨1 天前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++
zzzzzz3103 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode3 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
A小辣椒4 天前
TShark:Wireshark CLI 功能
linux
A小辣椒5 天前
TShark:基础知识
linux
AlfredZhao5 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci