编译gcc-8.3

由于目标版本上的gcc工具很低(gcc version 4.8.5 ),此版本下无法编译驱动,故通过编译gcc-8.3源码的方式升级gcc版本;步骤如下:

1、下载gcc源码,国内通过阿里开源镜像站下载,选择合适版本:

gnu-gcc安装包下载_开源镜像站-阿里云

2、执行./contrib/download_prerequisites。如果成功ok,如果失败。则需要分别下载download_prerequisites文件内的四个软件压缩包;

由于我的环境下载gmp失败,故直接通过网页下载gmp,连接如下:

Index of /pub/gcc/infrastructure

contrib/download_prerequisite 文件的内容如下:

gmp='gmp-6.1.0.tar.bz2'

mpfr='mpfr-3.1.4.tar.bz2'

mpc='mpc-1.0.3.tar.gz'

isl='isl-0.18.tar.bz2'

base_url='ftp://gcc.gnu.org/pub/gcc/infrastructure/'

3、分别编译这四个包(要先编译gmp);分别执行configure; make; make install;

由于采用默认参数,编译的包会放在/usr/local目录下,所以需要加环境变量:

vi ~/.bash_profile

增加:
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

然后使生效:

source ~/.bash_profile

4、编译gcc,执行:

复制代码
./configure--enable-shared --enable-threads=posix --enable-languages=c,c++,fortran --disable-multilib

make -j80

make install

会自动替换系统默认的gcc。执行完毕,再看gcc版本已经变为8.3。

相关推荐
yv798an11 分钟前
从 OpenSBI 引导到 C++17 异步运行时:自制 RISC-V 嵌入式专有 NAS 踩坑全记录
linux
不悔哥41 分钟前
Linux系统编程多线程程序如何安全退出
linux
Fcy6481 小时前
Linux下 数据链路层详解(从以太网到ARP协议)
linux·mac·以太网·数据链路层·arp
‎ദ്ദിᵔ.˛.ᵔ₎3 小时前
linux 进程信号(下)
linux·运维·服务器
skywalk81633 小时前
在FreeBSD系统的linux仿真环境下安装和使用kiro 这个亚马逊的AI agent
linux·人工智能·freebsd·kiro
Mikko73 小时前
Linux 磁盘满了但 du 找不到?LVM 扩容 df 不变?fstab 写错开不了机?三台真机实测磁盘排查
linux·运维·centos
Madison-No73 小时前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
Liuqy-054 小时前
特殊进程——孤儿、僵尸、守护进程
linux·运维·服务器
流浪0014 小时前
Linux系统篇47——线程(十二) POSIX 信号量与环形队列,把判空判满提前到访问之前
linux·操作系统·线程·信号量·环形队列
咖丨喱4 小时前
【MMC Core + hc16 Host(WiFi SDIO 如何落到控制器)】
linux