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

相关推荐
辞旧 lekkk3 小时前
【Qt系统相关】鼠标事件
linux·开发语言·qt·学习·计算机外设·萌新
是摆烂第一名呀3 小时前
【rk3506】U-Boot串口时钟未配置,导致串口彻底失效
linux·arm开发·驱动开发·嵌入式硬件
liang89994 小时前
Anconda常用命令
linux·人工智能·conda
无足鸟ICT4 小时前
【RHCA+】管道符
linux·运维·服务器
老约家的可汗4 小时前
Linux的库制作和原理
linux·运维·服务器
非鱼䲆鱻䲜5 小时前
CCS 20.5.0的printf重定向串口怎么实现?
linux·单片机·电赛·ccs
左手厨刀右手茼蒿5 小时前
PCIe设备驱动开发:从枚举到DMA传输的完整链路
linux·嵌入式·系统内核
济6175 小时前
I.MX6U Linux 驱动开发篇---零基础必看!中断实验(按键中断 + 定时器消抖 + 设备树配置实战教程)--- Ubuntu20.04
linux·驱动开发·嵌入式·嵌入式linux驱动开发
seven_stars_6 小时前
CVE-2018-19518PHP漏洞
linux·浏览器·kali
浅止菌6 小时前
嵌入式设备ping不通?tcpdump 5分钟找到凶手,比加printf快10倍
linux