首页 > 系统相关 >OS-Ubuntu-gcc-源码安装gcc7.5.0

OS-Ubuntu-gcc-源码安装gcc7.5.0

时间:2024-08-08 17:54:20浏览次数:13  
标签:gcc gcc7.5 -- apt 源码 install 安装

OS-Ubuntu-gcc-源码安装gcc7.5.0

下载GCC源代码

wget https://ftp.gnu.org/gnu/gcc/gcc-X.Y.Z/gcc-X.Y.Z.tar.gz

解压、配置、编译gcc7.5.0

操作指令序列:

//解压源代码
tar -xzf gcc-7.5.0.tar.gz
cd gcc-X.Y.Z

//安装依赖(以Ubuntu为例)
sudo apt-get build-dep gcc
sudo apt-get install build-essential

//配置安装选项
./configure --prefix=/opt/gcc --enable-languages=c,c++ --disable-multilib

//编译GCC
make -j$(nproc)

//安装GCC
sudo make install

//清理编译产生的临时文件
make distclean

编译报错

编译报错:
error: size of array ‘assertion_failed__1150’ is negative
typedef char IMPL_PASTE(assertion_failed_##_, line)[2*(int)(pred)-1]
以及后面跟着一堆报错信息

解决方法:注释<gcc源码目录>/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc里面的CHECK_SIZE_AND_OFFSET(ipc_perm, mode); 

依赖

  1. Ubuntu20.04 可以从源安装gcc7.5.0:apt install gcc-7
  2. Ubuntu24.04 源不支持gcc7.5.0
    Ubuntu24.04编译GCC(GNU编译器集合)需要满足一定的依赖关系,具体需要
    GMP(GNU Multiple Precision Arithmetic Library)版本4.2或更高
    MPFR(Multiple-Precision Floating-Point Computations With Correct Rounding)版本2.4.0或更高
    MPC(Multiple-Precision Complex Floating-Point Library)版本0.8.0或更高
    apt install libgmp-dev   6.3.0
    apt install libmpfr-dev  4.2.1
    apt install libmpc-dev   1.3.1
    
  3. gcc依赖:https://gcc.gnu.org/pub/gcc/infrastructure/

查看gcc版本

  • ls - /usr/bin/gcc* :查看已安装gcc版本
  • gcc --version

修改gcc默认版本

使用update-alternatives修改gcc默认版本,其 是系统自带指令,不需安装

update-alternatives --help    // 
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7
gcc --version

update-alternatives --config gcc

update-alternatives --query gcc

标签:gcc,gcc7.5,--,apt,源码,install,安装
From: https://www.cnblogs.com/yongchao/p/18349459

相关文章

  • Java毕业设计 基于Springboot+Vue的电影院剧院订票选座管理系统(源码+lw+部署文档+讲
    文末获取资源,收藏关注不迷路文章目录项目介绍功能需求技术介绍项目界面关键代码目录项目介绍随着经济的发展和信息技术的普及,国内许多企业都面临了重大的挑战。企业的管理流程、战略规划如果不能进行调整,极有可能面临淘汰的风险。特别是郑州大剧院,面对大量的会员和......
  • 计算机毕业设计-基于python失物招领系统【源码+文档+PPT】
    精彩专栏推荐订阅:在下方专栏......
  • 一个基于 vue 的强大表单和高性能表格组件,简洁API设计,支持虚拟树,列拖拽,懒加载,快捷
    前言在现代Web应用开发中,表单和表格是两个核心组件,它们对于数据展示和用户交互至关重要。然而,现有的解-决方案往往存在一些痛点,如不够灵活、性能问题、以及难以实现复杂功能等。这些问题限制了开发者的创造力,也影响了用户体验。为了解决这些痛点,开发者需要一款功能强大、灵活......
  • django特定地区冷链物流信息调度系统-计算机毕业设计源码92919
    摘要本研究针对特定地区的冷链物流信息调度系统进行了深入探索与实践。冷链物流作为一种特殊的物流方式,对于保障食品、药品等易腐产品的新鲜度和质量至关重要。然而,在特定地区,由于地理环境、经济水平和物流资源的限制,冷链物流面临着诸多挑战。因此,本研究旨在开发一套高效、智......
  • JSP公共卫生综合管控平台md94w(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:用户,服务站,管控申请,管控记录,申请处理开题报告内容一、项目背景与意义在全球化背景下,公共卫生事件频发,对人民群众的生命安全和身体健康构成严重威......
  • 基于JAVA的宠物店会员管理系统设计与实现,源码、部署+讲解
    摘要随着计算机和网络的不断革新,世界也已进入了前所未有的电子时代。作为实用性强、应用范围广泛的会员管理系统也在被越来越多的行业所使用。当今社会经济发展迅速,宠物在人们生活中的地位也越来越高。市场上迫切需求一款便携操作的宠物会员管理。因此需要设计开发在效率、功......
  • JSP个人健康数据管理系统j3z2r程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:信息,医生,用户,坐诊信息,图书分类,图书信息,咨询信息,预约就诊,取消预约,循环预约,健康数据开题报告内容一、研究背景与意义随着健康意识的提升与信......
  • springboot校园失物招领系统-计算机毕业设计源码17082
    目 录摘要1绪论1.1研究背景1.2 研究意义1.3论文结构与章节安排2 相关技术介绍2.1B/S结构2.2SpringBoot框架2.3MySQL数据库3系统分析3.1可行性分析3.2系统流程分析3.2.1数据新增流程3.2.2 数据删除流程3.3 系统功能分析3.3.1......
  • springboot仓库仓储管理系统-计算机毕业设计源码14514
    目录1绪论1.1选题背景与意义1.2国内外研究现状1.3论文结构与章节安排2系统分析2.1可行性分析2.1.1技术可行性2.1.2经济可行性2.1.3操作可行性2.1.4法律可行性2.2系统流程分析2.2.1系统开发流程2.2.2用户登录流程2.2.3系统操作流程2.2.4添......
  • [Java SE] 核心源码精讲:java.util.Optional(JDK1.8-)
    1概述:java.util.Optional该类是Java8中引入的一个用于处理可能为null的值的容器类。这是一个容器对象,可能包含或不包含非空值。自Java1.8起支持如果有值存在,isPresent()方法将返回true;而get()方法将返回该值,若无值存在,将报异常java.util.NoSuchElement......