银河麒麟高级服务器操作系统V10(SP3-2403)-ARM版 gcc 更新

1、下载 我这里使用 的是 9.5

bash 复制代码
wget http://ftp.gnu.org/gnu/gcc/gcc-9.5.0/gcc-9.5.0.tar.xz

2、解压

bash 复制代码
tar -xvf gcc-9.5.0.tar.xz

cd gcc-9.5.0

3、下载关联软件

bash 复制代码
 ./contrib/download_prerequisites

4、配置

bash 复制代码
mkdir build && cd build

../configure   --prefix=/usr/local/gcc-9.5.0 -enable-checking=release -enable-languages=c,c++ -disable-multilib --build=aarch64-linux

5、编译(时间超级长 可达到几个小时)

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

6、安装

复制代码
make install

7、查看(此时直接使用 gcc --version 可能依然是原来的版本)

bash 复制代码
[root@iZbp1a096g2sc3exmeszcfZ ~]#  /usr/local/gcc-9.5.0/bin/gcc --version
gcc (GCC) 9.5.0
Copyright © 2019 Free Software Foundation, Inc.
本程序是自由软件;请参看源代码的版权声明。本软件没有任何担保;
包括没有适销性和某一专用目的下的适用性担保。

[root@iZbp1a096g2sc3exmeszcfZ ~]#  /usr/local/gcc-9.5.0/bin/g++ --version
g++ (GCC) 9.5.0
Copyright © 2019 Free Software Foundation, Inc.
本程序是自由软件;请参看源代码的版权声明。本软件没有任何担保;
包括没有适销性和某一专用目的下的适用性担保。

8、添加到系统变量

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

# 生效
source ~/.bashrc

9、查看

bash 复制代码
[root@iZbp1a096g2sc3exmeszcfZ ~]# gcc --version
gcc (GCC) 9.5.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@iZbp1a096g2sc3exmeszcfZ ~]# g++ --version
g++ (GCC) 9.5.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

10、更新 'CXXABI' not found

bash 复制代码
##查看

[root@iZbp1a096g2sc3exmeszcfZ ~]# strings /lib64/libstdc++.so.6 | grep 'CXXABI'
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_1.3.10
CXXABI_1.3.11
CXXABI_TM_1
[root@iZbp1a096g2sc3exmeszcfZ ~]# 

## 找到 刚刚 安装gcc 的版本 这里是 /usr/local/gcc-9.5.0/lib64/libstdc++.so.6.0.28
[root@iZbp1a096g2sc3exmeszcfZ ~]# find / -name "libstdc++.so*"
/usr/lib64/libstdc++.so.6.0.19
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.bak
/usr/lib/gcc/aarch64-kylin-linux/4.8.2/libstdc++.so
/usr/local/gcc-9.5.0/lib64/libstdc++.so.6
/usr/local/gcc-9.5.0/lib64/libstdc++.so.6.0.28-gdb.py
/usr/local/gcc-9.5.0/lib64/libstdc++.so
/usr/local/gcc-9.5.0/lib64/libstdc++.so.6.0.28
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.pyo
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.pyc
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.py
/data/java_cache/pytorch/2.5.1-20241113-cpu-precxx11-linux-aarch64/libstdc++.so.6
bash 复制代码
## 执行 以下操作
mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
ln -s /usr/local/gcc-9.5.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6


##在查看
[root@iZbp1a096g2sc3exmeszcfZ ~]# strings /lib64/libstdc++.so.6 | grep 'CXXABI'
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_1.3.10
CXXABI_1.3.11
CXXABI_1.3.12
CXXABI_TM_1
CXXABI_1.3
CXXABI_1.3.11
CXXABI_1.3.2
CXXABI_1.3.6
CXXABI_1.3.12
CXXABI_1.3.9
CXXABI_1.3.1
CXXABI_1.3.5
CXXABI_1.3.8
CXXABI_1.3.4
CXXABI_TM_1
CXXABI_1.3.7
CXXABI_1.3.10
CXXABI_1.3.3
相关推荐
磨十三13 小时前
U-Boot
arm开发·嵌入式硬件
Discipline~Hai2 天前
ARM03-蜂鸣器和中断
c语言·arm开发·单片机·嵌入式硬件·嵌入式
byte轻骑兵3 天前
BlueZ源码编译环境配置全指南:Linux桌面原生编译 + 嵌入式ARM交叉编译 + 定制裁剪与调试实战
linux·arm开发·蓝牙·bluez·电脑蓝牙
武汉万象奥科3 天前
AGV导航控制器方案 | 基于HD-RK3576系列核心板的算控融合一体化平台
arm开发·嵌入式硬件·arm核心板·单板机
zlinear数据采集卡3 天前
从“脏信号”到“纳伏级纯净”:硬核拆解DABL7606的多级抗混叠滤波与24位过采样算法
arm开发·科技·嵌入式硬件·fpga开发·开源
透明的玻璃杯4 天前
Arm屏幕
arm开发
Fu_Lin_4 天前
Qt嵌入式从零基础到精通(01):Qt嵌入式开发全景图:从桌面Qt到ARM Linux
linux·arm开发·qt·qt5·嵌入式linux
XMAIPC_Robot4 天前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
亿道电子Emdoor5 天前
【Arm】CoreSight ATB 简介
arm开发
Dlrb12115 天前
ARM---IMX6ULL定时器详解与应用:EPIT与GPT定时器,高精度延时函数
arm开发·gpt·arm·定时器·epit·高精度延时