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 
添加如下代码:
#gcc

LD_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

安装完毕!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

qt相关知识

lineEdit中的一些知识 首先我要设置lineEdit中的文本怎么操作 ui->lineEdit->setText(); 如何给窗口设置名字 this->setWindowTitle("计算器"); 如何给按钮设置我们的图片 QIcon ic("图片地址"); ui->button->setIcon(ic…

使用官网tar包制作OpenSSL及OpenSSH rpm包进行升级安装(OpenSSH_9.9p1, without OpenSSL未解决)

一、制作openssl-1.1.1w.rpm包 1、安装基础依赖包和rpmbuild及其依赖包 yum install curl which make gcc perl perl-WWW-Curl rpm-build rpm-build rpmdevtools tree -y yum install gcc-c glibc glibc-devel openssl openssl-devel \pcre-devel zlib zlib-devel perl…

WAL日志

1.WAL概述 PG WAL(Write-Ahead Logging)日志是PostgreSQL数据库中的一种重要机制,用于保证数据库的完整性和数据恢复。 1.1定义与功能 WAL日志是PostgreSQL的持久性技术,它将所有对数据库的修改操作(如INSERT、UPDA…

开放寻址法、链式哈希数据结构详细解读

一、开放寻址法(Open Addressing) 1. 定义 开放寻址法是一种哈希冲突解决策略,所有元素都存储在哈希表中。当发生冲突时,即两个键计算出的哈希值相同时,会按照一定的探查序列查找下一个可用的位置来存储新元素。 2.…

算法通关(4)-- 前缀树

前缀数原理和代码 原理 前缀树(Trie树),也称为字典树,是一种用于高效存储和检索字符串的数据结构。它是一种树形结构,能够利用字符串的公共前缀来减少存储空间和查询时间。 现在有“acb”,"cba","ac…

CSS3新增渐变(线性渐变、径向渐变、重复渐变)

1.线性渐变 代码: 效果图: 使文字填充背景颜色: 效果图: 2.径向渐变 代码: 效果图: 代码图: 效果图: 3.重复渐变 代码: 效果图:

Python 学习完基础语法知识后,如何进一步提高?

入门Python后,就可以拿些小案例练手了,这时候千万不要傻乎乎地成天啃语法书。 编程是一门实践的手艺,讲究孰能生巧。不管是去手撸算法、或者照葫芦画瓢写几个小游戏都可以让你的Python突飞猛进。 之前看github比较多,推荐给大家…

blender导入的图片渲染看不见,图片预览正常,但渲染不出

在使用Blender时,我们经常会遇到导入图片后在预览渲染中显示,但在实际渲染时图片消失的问题。本文将提供详细的解决方法,帮助大家解决“Blender导入的图片渲染图像不显示”的问题。 问题原因 导入的图片在Blender中只是一张图,并…

【数据结构】选择排序——选择排序 和 堆排序

选择排序 和 堆排序 一、选择排序选择排序的思路及其代码选择排序的弊端 二、堆排序三、速度对比同时排10000个数同时排100000个数同时拍500000个数堆排 1 亿个数 一、选择排序 选择排序的思路及其代码 选择排序思路很简单 就是经过将数组遍历选择最小值 将最小值位置的数与数…

Docker在CentOS上的安装与配置

前言 随着云计算和微服务架构的兴起,Docker作为一种轻量级的容器技术,已经成为现代软件开发和运维中的重要工具。本文旨在为初学者提供一份详尽的指南,帮助他们在CentOS系统上安装和配置Docker及相关组件,如Docker Compose和私有…

大数据新视界 -- 大数据大厂之 Impala 性能优化:数据存储分区的艺术与实践(下)(2/30)

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

CLIP论文CLIP 改进工作串讲

文章目录 CLIPViLTCLIP 改进工作串讲Lseg(Language -driven semantic segmentation)Group ViT(Semantic Segmentation Emerges from Text Supervision)ViLDGLIP_V1/V2(Ground Language-Image Pre-train)CLIP PassoCLIP…

C++:set详解

文章目录 前言一、set概念介绍二、set的使用1. 插入删除相关2. 查找相关1)find2)count3)lower_bound与upper_bound4)equal_range 三、set的值是不能修改的原理四、基于哈希表的set总结 前言 根据应用场景的不同,STL总…

【静态页面】尚品汇 1、设计稿分析及资源准备

目录 1. 准备工作2. 理解设计3. 规划项目结构 1. 准备工作 安装必要的工具:确保你的开发环境已经准备好,包括文本编辑器(如 VSCode)、浏览器等。获取设计文件:获取UI设计稿或者设计文件链接,并确保可以访问…

小时收入:衡量工作效率与个人自由的标准

小时收入,就是按照小时来计算一个人的收入。比如,一个月一共工作200小时,获得的总收入是20000元,那么小时收入就是100元/小时。 小时收入可以反应一个人的赚钱效率。 可能两个人的月收入一样,但是付出的总工作时间不…

RFID文件柜在文件管理中的作用

一、RFID文件柜系统概述 1.1 RFID技术简介 RFID(Radio Frequency Identification,无线射频识别)技术是一种非接触式的自动识别技术,它通过无线电讯号识别特定目标并读写相关数据,无需识别系统与特定目标之间建立机械…

mysql代码生成器

项目 pom 文件内容 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/…

域控操作二十四:主域故障辅域接替

模拟环境&#xff1a;上海DC1故障无法开机&#xff0c;导致只有一个DNS的电脑无法上网&#xff08;实际可以添加DC2但是为了实验就不说了&#xff09; FSMO还在DC1上 使用powershell把角色迁移到DC2 ntdsutil roles connections connect to server DC2SHA.whbk.cn quitSeize …

Redis(2):内存模型

一、Redis内存统计 工欲善其事必先利其器&#xff0c;在说明Redis内存之前首先说明如何统计Redis使用内存的情况。 在客户端通过redis-cli连接服务器后&#xff08;后面如无特殊说明&#xff0c;客户端一律使用redis-cli&#xff09;&#xff0c;通过info命令可以查看内存使用情…