在Ubuntu系统上手动安装GCC环境
Ubuntu系统是自带GCC安装指令的apt install gcc,当前apt源中gcc版本为5.4.0,版本太低,推荐手动安装gcc8.3.0
手动安装gcc8.3.0之前需要先确保安装gcc环境依赖GMP 4.2+ 、 MPFR 2.3.1+ 、 MPC 0.8.0+,否则会报出以下错误
configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations.
安装GMP 6.1.2
#下载GMP安装包
wget http://mirror.hust.edu.cn/gnu/gmp/gmp-6.1.2.tar.xz
#解压GMP安装包
tar -Jxf gmp-6.1.2.tar.xz
#创建GMP安装路径
mkdir -p /usr/local/gmp-6.1.2
#配置安装文件
cd gmp-6.1.2
./configure --prefix=/usr/local/gmp-6.1.2
#编译源码
make
#安装
make install
安装MPFR4.0.2
#下载MPFR 安装包
wget http://mirror.hust.edu.cn/gnu/mpfr/mpfr-4.0.2.tar.xz
#解压MPFR安装包
tar -Jxf mpfr-4.0.2.tar.xz
#创建MPFR安装路径
mkdir -p /usr/local/mpfr-4.0.2
#配置安装文件
cd mpfr-4.0.2
./configure --prefix=/usr/local/mpfr-4.0.2 --with-gmp=/usr/local/gmp-6.1.2
#编译源码
make
#安装
make install
安装MPC1.1.0
#下载MPC 安装包
wget http://mirror.hust.edu.cn/gnu/mpc/mpc-1.1.0.tar.gz
#解压MPC安装包
tar -zxf mpc-1.1.0.tar.gz
#创建MPC安装路径
mkdir -p /usr/local/mpc-1.1.0
#配置安装文件
cd mpc-1.1.0
./configure --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.2
#编译源码
make
#安装
make install
上述全部安装完成后,安装GCC8.3.0
#下载gcc安装包
wget mirror.hust.edu.cn/gnu/gcc/gcc-8.3.0/gcc-8.3.0.tar.gz
#解压gcc安装包
tar -zxf gcc-8.3.0.tar.gz
#创建gcc安装路径
mkdir -p /usr/local/gcc-8.3.0
#配置安装文件
cd gcc-8.3.0
#后面的--with-gmp, --with-mpfr and/or --with-mpc选项一定要是相应安装的路径,否则会报出和上边同样的错误
./configure --prefix=/usr/local/gcc-8.3.0 --disable-multilib --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.2 --with-mpc=/usr/local/mpc-1.1.0
#编译
make
#make完成后,make install
make install
ln -s /usr/local/gcc-8.3.0 /usr/local/gcc
# 配置环境变量
export PATH=/usr/local/gcc/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/gcc/lib64:/usr/local/gmp/lib:/usr/local/mpfr/lib:/usr/local/mpc/lib:$LD_LIBRARY_PATH
export MANPATH=/usr/local/gcc/share/man:$MANPATH
# 查看gcc版本,判断gcc是否安装成功
gcc --version
如果在安装gcc的make过程中报错“error: C++ preprocessor "/lib/cpp" fails sanity check”,是因为缺少C++必要的库,执行安装apt-get install build-essential。然后make clean后再make即可。
make 过程需要3个小时左右,make install过程需要一个小时左右,安心等待即可
在Ubuntu系统上手动安装GCC环境的更多相关文章
- 十分钟内在Ubuntu系统上搭建Mono开发环境(Mono软件Ubuntu系统国内镜像源、Mono国内镜像源)
Mono软件Ubuntu系统国内镜像源.Mono国内镜像源 http://download.githall.cn/repo 替换为国内源(非官方)有利于加快mono的安装速度,一般情况下,完成mono ...
- ubuntu系统下手动安装autoconf安装包
首先简单介绍一下autoconf.Autoconf是一个可以适应多种unix类系统的shell脚本的工具. 我在往虚拟机中安装应用时,需要用到该工具,于是想下载一个.但是由于系统内核版本低,已不能用a ...
- ubuntu系统下怎么安装gcc编译器
你安装一个名字叫做build-essential的软件包,就可以一次将编译器.make工具.所有的编程头文件.函数库等东东全部安装上,其中也包括gcc编译器,这是非常稳妥的安装方式,安装命令是用roo ...
- 解决django项目在ubuntu系统上无法安装mysqlclient
首先我的项目是django2.0,python环境是3.5. 我们在本地开发完django项目了,在本地运行是成功的,然后我们把django项目放到服务器上,运行的时候就出错了. 如图: 我们都知道, ...
- mongodb 在 Ubuntu系统上的安装及卸载
mongodb官网 The mongodb-org-server package provides an initialization script that starts mongod with t ...
- 在64位Ubuntu系统上安装32位程序包
在64位Ubuntu系统上安装32位的程序包 $sudo apt-get install package_name:i386 例如: $sudo apt-get install openjdk-7-j ...
- Nginx: ubuntu系统上如何判断是否安装了Nginx?
问题描述:ubuntu系统上,如何查看是否安装了Nginx? 解决方法:输入命令行:ps -ef | grep nginx master process后面就是Nginx的安装目录. 延伸:1. 如何 ...
- 最新版 Harbor 在ubuntu系统上安装
最新版 Harbor 在ubuntu系统上安装 The latest version of Harbor is installed on the ubuntu system 安装docker Inst ...
- 在ubuntu机器上部署php测试环境
在ubuntu机器上部署php测试环境 一.部署环境 Ubuntu11.10_X86_32,编译安装相应的软件:nginx+mysql+php. 二.软件安装 2.1 软件下载 libiconv-1. ...
- 在Ubuntu系统上搭建Hadoop 2.x(2.6.2)
官方的中文版的Hadoop快速入门教程已经是很老的版本了,新版的Hadoop目录结构发生了变化,因此一些配置文件的位置也略微调整了,例如新版的hadoop中找不到快速入门中提到的conf目录,另外,网 ...
随机推荐
- abc292[AtCoder Beginner Contest 292] 题解
写点题目转换下心情吧 A-CAPS LOCK 大水题 B-Yellow and Red Card 大水题 C-Four Variables 给定一个数\(N\),问有多少个有序正数数组\((A,B,C ...
- argmax经过sigmoid和不经过sigmoid区别
起因 今天和同组讨论了一下网络输出时,在torch.argmax之前经过torch.sigmoid和不经过sigmoid的区别. 主要起因是实验结果图像不同 图1 不经过sigmoid 图2 经过si ...
- Windows10 安装使用 Docker
Windows10 安装使用 Docker 下载安装 Docker Desktop https://docs.docker.com/docker-for-windows/install/ 点击运行 D ...
- 一文搞懂SaaS业务架构:价值流、业务能力、业务流程、业务对象、组织架构
1 目标与步骤 2 价值流分析 2.1 从价值主张到价值流 2.2 价值流的概念 2.2 价值流如何识别? 2.3 价值流阶段如何识别? 3 业务流程 3.1 业务流程的概念 3.2 端到端流程 3. ...
- 打包项目的时候出错 Multiple assets emit different content to the same filename index.html
上一次的打包的时候 内存已存在 index.html 了所以冲突了 : 解决办法 :关机重启 : 或者改变当前的index.html 文件名称 :
- 在Java程序中监听mysql的binlog
目录 1.背景 2.mysql-binlog-connector-java简介 3.准备工作 1.验证数据库是否开启binlog 2.开启数据库的binlog 3.创建具有REPLICATION SL ...
- K8s GPU 资源管理探索:在 KubeSphere 上部署 AI 大模型 Ollama
作者:运维有术星主 随着人工智能.机器学习.AI 大模型技术的迅猛发展,我们对计算资源的需求也在不断攀升.特别是对于需要处理大规模数据和复杂算法的 AI 大模型,GPU 资源的使用变得至关重要.对于运 ...
- NlogN 求最长不下降子序列(LIS)
最长不下降子序列是一道非常经典的题目,我们假设题目如下: 有一个数组 $ a $,现在要从中抽取一个严格上升的子序列(子序列就是你可以从原序列里删除一些数,保留一部分数得到的新数列)(严格上升也就是不 ...
- Kubernetes上安装nacos
k8s配置 --- apiVersion: apps/v1 kind: Deployment metadata: name: nacos namespace: com spec: selector: ...
- dotnet core微服务框架Jimu ~ 会员授权微服务
提供授权服务,用户使用会员的用户名和密码获取 token, 带着 token 访问受保护的接口,如浏览和发布新闻. 有 2 个公开的 api: token: 获取 token; GetCurrentM ...