Linux下GCC编译器的安装

Linux下GCC编译器的安装
以下所有的版本都可以在https://gcc.gnu.org/pub/gcc/infrastructure/这里找最新的
通过apt-get方式下载的Qt5.9的gcc编译器版本只是4.8.3,无法打开一些Qt5的库头文件,所以准备在Llinux下再安装一个gcc5.3.0。

查看gcc版本

ubuntu下查看gcc的版本非常简单,直接在终端上输入gcc -v 或者 gcc --version,就会显示版本信息了,而且它配置的编译脚本参数也可看到,如下图所示:

gcc下载安装

1、可以去gcc各版本下载链接下载gcc5.3.0安装包,也可以通过命令行下载。

#cd /opt
#可以在https://gcc.gnu.org/pub/gcc/infrastructure/这里找最新的
#wget http://ftp.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.gz

2、解压

#tar -xvf gcc-5.3.0.tar.gz

3、创建安装目录

#mkdir /usr/local/gcc-5.3.0/

4、配置安装

#/opt/gcc-5.3.0/configure -prefix=/usr/local/gcc-5.3.0

如果出现如下错误:
在这里插入图片描述
说明缺少依赖库GMP、MPFR、MPC,可以从下载链接下载,按下面顺序安装。

⑴ 安装GMP4.3.2

#进入下载目录

#cd /opt

#下载

#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2

#解压

#tar -xvf gmp-4.3.2.tar.bz2

#进入解压目录

#cd /opt/gmp-4.3.2

#创建安装目录

#mkdir /usr/local/gmp-4.3.2

#配置安装

#./configure -prefix=/usr/local/gmp-4.3.2

#编译

#make

#安装

#make install

⑵ 安装MPFR2.4.2

#进入下载目录

#cd /opt

#下载

#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2

#解压

#tar -xvf mpfr-2.4.2.tar.bz2

#进入解压目录

#cd /opt/mpfr-2.4.2

#创建安装目录

#mkdir /usr/local/mpfr-2.4.2

#配置安装

#./configure --prefix=/usr/local/mpfr-2.4.2 --with-gmp=/usr/local/gmp-4.3.2

#编译

#make

#安装

#make install

⑶ 安装MPC0.8.1

#进入下载目录

#cd /opt

#下载

#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz

#解压

#tar -xvf mpc-0.8.1.tar.gz

#进入解压目录

#cd /opt/mpc-0.8.1

#创建安装目录

#mkdir /usr/local/mpc-0.8.1

#配置安装

#./configure --prefix=/usr/local/mpc-0.8.1 --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2

#编译

#make

#安装

#make install

5、再次配置GCC安装配置选项

#cd /usr/local/gcc-5.3.0
#/opt/gcc-5.3.0/configure --prefix=/usr/local/gcc-5.3.0 -enable-threads=posix -disable-checking -disable-multilib -enable-languages=c,c++ --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1

6、编译

#make

大约半小时编译完成…

7、安装

make install

8、软链接

#ln -s /usr/local/gcc-5.3.0/bin/gcc gcc 
#ln -s /usr/local/gcc-5.3.0/bin/g++ g++

9、添加环境变量

 vim /etc/bashrc或者 vim ~/.bashrc 
添加如下代码:
#gccLD_LIBRARY_PATH=:/usr/local/mpc-0.8.1/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib:/usr/local/gcc-5.3.0/lib:/usr/local/gcc-5.3.0/lib64
#export LD_LIBRARY_PATH

安装完毕!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/6750.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】

软件包管理器 yum yum类似应用商店客户端,有人已经把软件写好放在服务器上了,通过yum找到服务器上的软件下载 软件操作 yum list 可以显示所有可下载软件,我们要找lrzsz软件 yum install 下载 yum remove 卸载 yum源 yum下载软件是通过…

【论文复现】基于图卷积网络的轻量化推荐模型

本文所涉及所有资源均在这里可获取。 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐、摄影的一位博主。 📗本文收录于论文复现系列,大家有兴趣的可以看一看…

天命人开店日记之门店经营调研(下)

在调研前拟定了一些想要去了解的信息,包括:月销量、净利润、用户购买的主要担忧、与电商平台的竞争差异等关键内容,然而当自己去实地考察线下门店时,确发现实际情况与自己的预期相差非常大。大大出乎预料的包括三方面:…

桑基图在医学数据分析中的更复杂应用示例

桑基图(Sankey Diagram)能够有效地展示复杂的流动关系,特别适合用于医学数据分析中的多种转归和治疗路径的可视化。接下来,我们将构建一个稍微复杂的示例,展示不同疾病患者在治疗过程中的流动,以及他们的治…

【linux】再谈网络基础(一)

1. 再谈 "协议" 协议是一种 "约定",在读写数据时, 都是按 "字符串" 的方式来发送接收的. 但是这里我们会遇到一些问题: 如何确保从网上读取的数据是否是完整的,区分缓冲区中的由不同客户端发来的数据 2. 网…

基于CNN-RNN的影像报告生成

项目源码获取方式见文章末尾! 600多个深度学习项目资料,快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【PaddleNLP的FAQ问答机器人】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现…

【AI落地应用实战】构建基于知识图谱的知识问答系统

一、知识图谱概述 知识图谱(Knowledge Graph)是一种结构化的语义知识库,它以图形的方式组织和整合信息,使得数据之间的关系变得直观和易于理解。知识图谱的概念融合了计算机科学、数据科学、人工智能等多个领域的技术&#xff0c…

微积分复习笔记 Calculus Volume 1 - 4.8 L’Hôpital’s Rule

4.8 L’Hpital’s Rule - Calculus Volume 1 | OpenStax

AI辅助论文写作的利弊

人工智能的时代,AI从自动驾驶到智能家居,慢慢的都成为了我们生活中的一部分。可当AI被放到学术研究领域,特别是撰写论文这一问题上时,却出现了大量的争议,认为AI撰写论文会削弱该有的批判性思维能力。那不用AI撰写论文…

AOP详解

一.什么是 AOP? AOP 的目的是将横切关注点(如日志记录、事务管理、权限控制、接口限流、接口幂等等)从核心业务逻辑中分离出来,通过动态代理、字节码操作等技术,实现代码的复用和解耦,提高代码的可维护性和…

红队知识学习入门(4)Windows病毒编写

声明 学习视频来自B站UP主 泷羽sec,如涉及侵泷羽sec权马上删除文章笔记的只是方便各位师傅学习知识,以下网站涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 1、端口号及对应漏洞 ftp:21 tenlnet:23 web:80 80-89:可能是web 443:ssl心脏滴血…

知识竞赛答题系统,线上答题小程序链接怎么做?

随着智能手机的普及,越来越多的单位开始在线上开展知识竞赛。这种形式的知识竞赛不仅易于操作,而且参与度更高。那么线上知识竞赛答题系统怎么做呢?自己可以做吗?答案是可以的!借助微信答题系统制作平台风传吧&#xf…

AndroidStudio通过Bundle进行数据传递

作者:CSDN-PleaSure乐事 欢迎大家阅读我的博客 希望大家喜欢 使用环境:AndroidStudio 目录 1.新建活动 2.修改页面布局 代码: 效果: 3.新建类ResultActivity并继承AppCompatActivity 4.新建布局文件activity_result.xml 代…

【网络-交换机】生成树协议、环路检测

路由优先级 路由优先级决定了在多种可达的路由类型中,哪种路由将被用来转发数据包。路由优先级值越低,对应路由的优先级越高,优先级值255表示对应的路由不可达。一般情况下,静态路由的优先级为1,OSPF路由优先级为110&a…

华为eNSP:mux-vlan

一、什么是mux-vlan? Mux-vlan 是一种多路复用的虚拟局域网(Virtual Local Area Network)技术。它将多个不同的VLAN流量转发到同一个物理端口,从而实现VLAN间的互通。 在传统的以太网环境中,每个VLAN通常都有一个独立…

又发现了Mac妙控鼠标的新使用方法

我一直是不爱用妙控鼠标的,因为用起来怪怪的,但是今天发现BettreAndBetter支持妙控鼠标的修改,于是就找出了闲置了许久的妙控鼠标试了一下 优化后的妙控鼠标使用起来就没有任何不适应的地方了,三指按下模拟中键,而且还…

Cursor编程工具

最近爆火的Cursor是一款基于 VS Code 二次开发的 AI 编辑器。相比传统编辑器,它将 AI 技术深度融合到各个功能点,带来了前所未有的用户体验。 下载链接:https://www.cursor.com/ 第一步:下载安装 下载完成后,双击启动…

Me-LLaMA——用于医疗领域的新型开源大规模语言模型

摘要 大规模语言模型的出现是提高病人护理质量和临床操作效率的一个重大突破。大规模语言模型拥有数百亿个参数,通过海量文本数据训练而成,能够生成类似人类的反应并执行复杂的任务。这在改进临床文档、提高诊断准确性和管理病人护理方面显示出巨大的潜…

鸿蒙ArkTS中的布局容器组件(Column、Row、Flex、 Stack、Grid)

在鸿蒙ArkTS中,布局容器组件有很多,常见的有:   ⑴ Column:(垂直布局容器):用于将子组件垂直排列。   ⑵ Row:(水平布局容器):用于将子组件水…

【点击劫持漏洞(附测试代码)】

漏洞描述 点击劫持(Clickjacking)是一种网络攻击技术,攻击者通过将一个恶意的页面或按钮隐藏在合法网站的页面下,诱使用户在不知情的情况下点击隐藏的内容,从而触发攻击者设计的操作。这种攻击通常会导致用户无意中执…