首页 > 编程语言 >GCC源码编译安装升级

GCC源码编译安装升级

时间:2023-12-11 14:23:25浏览次数:40  
标签:GCC gcc LIBRARY 编译 源码 export HOME PATH

gcc官网:​​https://gcc.gnu.org/​

1.安装系统默认gcc(有则忽略)

yum install -y gcc gcc-c++ make

2.下载高版本gcc源码包

下载地址:​​https://ftp.gnu.org/gnu/gcc/​

wget https://ftp.gnu.org/gnu/gcc/gcc-7.5.0/gcc-7.5.0.tar.gz

3.源码编译安装

#解压
tar -xvf gcc-7.5.0.tar.gz

#下载依赖
cd gcc-7.5.0
./contrib/download_prerequisites

#编译安装
./configure --prefix=/usr/local/gcc-7.5.0 --enable-threads=posix --disable-multilib --enable-languages=c,c++,fortran
make -j16 #cpu核数
make install

  

4.设置GCC环境变量

#设置变量
export GCC_HOME=/usr/local/gcc-7.5.0
export PATH=${GCC_HOME}/bin:$PATH
export LD_LIBRARY_PATH=${GCC_HOME}/lib:${GCC_HOME}/lib64:$LD_LIBRARY_PATH
export LIBRARY_PATH=${GCC_HOME}/lib:${GCC_HOME}/lib64:$LIBRARY_PATH 
export MANPATH=${GCC_HOME}/share/man:$MANPATH
export INCLUDE=${GCC_HOME}/include:$INCLUDE
#CMAKE编译设置
export CC=gcc CXX=g++ FC=gfortran

 

小知识:LIBRARY_PATH与LD_LIBRARY_PATH变量区别

LIBRARY_PATH环境变量用于编译,在程序编译期间查找动态链接库时指定查找共享库的路径,例如,指定gcc编译需要用到的动态链接库的目录。

LD_LIBRARY_PATH环境变量用于运行,在程序加载运行期间查找动态链接库时指定除了系统默认路径之外的其他路径。

 

标签:GCC,gcc,LIBRARY,编译,源码,export,HOME,PATH
From: https://www.cnblogs.com/imxusq/p/17894294.html

相关文章

  • Nacos 配置中心源码
    客户端入口在引入配置中心maven依赖的jar文件中找到spring-cloud-starter-alibaba-nacos-config-2.2.5.RELEASE.jar!/META-INF/spring.factories,在该配置文件找到NacosConfigBootstrapConfiguration配置类,该类是nacos配置中心的入口类,类中注册了三个bean。NacosCon......
  • VS 编译报错,未能找到 "XXX" 的一部分
    出现这个报错,最大的可能是路径太长了,windows 路径的默认最大长度是260 个字符,路径超过此长度就会报错解决方法:启用长路径找到注册表Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled(Type:REG_DWORD)该项的值设置为1就可以了......
  • cpp的编译过程
    C++程序的编译过程通常分为四个主要步骤:预处理(Preprocessing):这个阶段主要处理源代码文件中的以“#”开头的预编译指令4。例如,对宏进行展开,对include的文件进行展开,处理条件编译选项判断,清理注释等。预处理后生成的文件通常以.i或.ii结尾2。编译(Compilation):编译阶段使用预......
  • 甘肃非物质文化网站的设计-计算机毕业设计源码+LW文档
    摘 要现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本甘肃非物质文化网站就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率......
  • springboot031教师工作量管理系统-计算机毕业设计源码+LW文档
     摘要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了教师工作量管理系统的开发全过程。通过分析教师工作量管理系统管理的不足,创建了一个计算机管理教师工作量管理系统的方案。文章介绍了教师工作量管理系统的系统分析部分,包括可......
  • 基于springboot的房屋租赁系统-计算机毕业设计源码+LW文档
    摘 要房屋是人类生活栖息的重要场所,随着城市中的流动人口的增多,人们对房屋租赁需求越来越高,为满足用户查询房屋、预约看房、房屋租赁的需求,特开发了本基于SpringBoot的房屋租赁系统。本文重点阐述了房屋租赁系统的开发过程,以实际运用为开发背景,基于SpringBoot框架,运用了Java......
  • 关于开源项目QGIS源码的分析
    QGIS地址:https://github.com/qgis/QGIS#1-flexible-and-powerful-spatial-data-managementQGIS是一个开源的地理信息系统(GIS)软件项目。采用的技术栈QGIS的主要技术栈涵盖了多个领域,包括图形用户界面,地理信息数据处理、数据库集成以及插件开发QT:QGIS的图形用户界面采用Q......
  • Netty源码学习8——从ThreadLocal到FastThreadLocal(如何让FastThreadLocal内存泄漏do
    系列文章目录和关于我一丶引入在前面的netty源码学习中经常看到FastThreadLocal的身影,这一篇我们将从ThreadLocal说起,来学习FastThreadLocal的设计(《ThreadLocal源码学习笔记》)二丶从ThreadLocal说起ThreadLocal是JDK中实现线程隔离的一个工具类。实现线程隔离maybe你第一反应......
  • java-打包编译常用命令
    java-打包编译常用命令 1.maven预编译(打包检查异常) 在上到测试环境或者生产环境之前,先在本地打包检查异常: mvncleaninstall-Dmaven.test.skip=true-X  2.maven打包 一般用IDEA上的maven工具按钮: 如果打包失败则可以用下面的命令: mvncleaninsta......
  • Java基于云端的云HIS服务平台源码
    云HIS是针对中小医疗机构推出的一套基于云端的云HIS服务平台,借助云his,将医院业务流程化,大大提高医院的服务效率和服务质量,为客户提供医院一体化的信息解决方案。云his主要功能:包含门诊收费管理,住院收费管理,门诊医生工作站,住院医生工作站,住院护士工作站,辅助检查科室管理,药房药品管......