编译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。

相关推荐
奈斯先生Vector18 分钟前
从 127.0.0.1:3080 到插件运行时:DeepSeek Harness 远程开发与版本治理实战
linux·运维·人工智能·ubuntu·aigc
wuminyu23 分钟前
JDK21中虚拟线程和FFM协同实现高并发源码剖析
java·linux·c语言·jvm·c++
Android系统攻城狮1 小时前
Linux PipeWire深度解析之pw_stream_new调用流程与实战(七十八)
linux·运维·服务器·音频进阶·pipewire音频实战进阶
换个号退隐江湖i2 小时前
LLM 调试日志刷屏怎么办?用 tee 边看边存
linux
DYWorker0012 小时前
搭建嵌入式Linux虚拟机开发环境
linux
weipt3 小时前
从ollama到llama.cpp
linux·服务器·llama
加油码3 小时前
动静态库的链接底层原理(进阶版)
linux·c++
H_oRIZoN_4 小时前
Linux入门DAY23(C语言树形结构)
linux·c语言·数据结构
kdxiaojie4 小时前
Linux USB驱动阅读笔记(1)
linux·笔记·学习·usb
JacksonMx4 小时前
Java CompletableFuture 异步编程实战:从入门到架构师避坑指南
linux·数据库·python