文档章节

Cenos6.5 安装Gcc编译器

l
 landlore
发布于 2015/11/26 13:32
字数 1200
阅读 28
收藏 0
点赞 0
评论 0

本人使用的是CentOS 6.5 64位系统,由于在安装系统的时候并没有勾选安装gcc编译器,因此需要自行安装gcc编译器。

使用yum安装gcc

对于配备了yum的Linux发行版而言,安装gcc编译器就变得so easy。我们只需要分别执行如下命令即可:

#安装gcc、c++编译器以及内核文件
yum -y install gcc gcc-c++ kernel-devel 或
1.首先把旧的gcc相关的编译工具安装好
yum install gcc gcc-c++ glibc-static -y  安装静态库(不用安装上面的)

自行安装gcc

不过使用yum安装的gcc并非当前的最新版本,目前gcc的最新版本为4.9.0(gcc 4.8开始全面支持C 11和C++ 11的新特性)。如果我们想要安装最新版本的gcc,那么就需要自行安装gcc。

笔者初次安装gcc时,在网络上搜寻了大量的gcc安装配置教程,许多教程的内容非常之多,结果把自己搞晕了,编译安装的时候还老是出现各种错误。最后查阅官方文档才发现,自行安装新版本的gcc并不复杂,根本没有那些教程中说的那样繁琐(有些教程居然还要修改几个配置文件)。

下载gcc安装文件

在安装gcc当然要先拿到gcc的安装文件。在这里我们直接通过官方下载gcc-4.9.0.tar.bz2(86 MB)。当然,你也可以下载gcc-4.9.0.tar.gz(110 MB),不过该压缩文件要大出不少。

编译前的准备工作

想要安装gcc 4.8及以上版本,你需要先安装C标准库和头文件,以及旧版本的c++编译器。如果你的计算机中没有这些,请执行以下命令(当然你也可以使用apt-get等其它方式进行安装,如果已经安装则无需再次安装):

#安装C和C++的静态库
yum install -y glibc-static libstdc++-static
#安装旧版本的gcc、c++编译器
yum install gcc gcc-c++

在这里,我们将gcc-4.9.0.tar.bz2解压到/usr/local/src目录中(当然你也可以指定其他目录),完整的tar命令为:

#解压gcc安装文件
tar -xvf gcc-4.9.2.tar.bz2 -C /usr/local/src

解压后gcc源程序的根目录就是/usr/local/src/gcc-4.9.0。接着,我们依次执行如下命令:

#转到gcc源程序根目录
cd /usr/local/src/gcc-4.9.2
#下载一些必备的依赖程序
./contrib/download_prerequisites
安装gcc需要下载诸如gmp、mpfr、mpc等依赖文件,执行download_prerequisites将会自动下载这些软件并解压到当前目录(文件不大,总共只有几MB,请耐心等待下载)。
单独安装上面的三个包,在编译gcc时会报错,按系统的提示分别到gmp、mpfr、mpc这三个目录下运行
make distclean 清除掉,解决问题,再次到build下make就可以了

编译安装gcc

接着,就可以对gcc进行编译安装了。在此之前,我们先创建一个目录/usr/local/build/gcc-4.9.0(你也可以自行指定其他目录)用于存放编译后的程序文件。然后我们依次执行如下命令:

#跳转到编译后的程序文件存放目录
cd /usr/local/build/gcc-4.9.2
#调用gcc源程序的configure(后面的参数选项可根据需要自行修改),用于配置gcc
/usr/local/src/gcc-4.9.2/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
#编译gcc源程序
make
#安装gcc
make install

其中执行make命令这一过程耗费的时间可能非常多,笔者这里耗费了20多分钟才编译完成。执行完上述命令后,我们的gcc就已经安装成功了。

与其他教程不同的是,本教程并没有对gmp、mpfr、mpc等软件分别进行解压和编译,而是直接由download_prerequisites负责下载并解压,最后和gcc一起进行编译安装,这也是官方推荐的做法(download_prerequisites还会根据实际情况决定是否启用Graphite循环优化)。

如果你的Linux无法直接联网,那么你只能打开文件download_prerequisites,获取到这些文件的下载链接,然后通过其他上网设备下载这些软件。最后把这些软件直接解压到gcc源程序目录(/usr/local/src/gcc-4.9.0)下即可。

8.卸载旧版本

  1. yum remove gcc  
    yum remove gcc-c++  
    updatedb


链接到新版本

  1.  

  2. cd /usr/bin  
    ln -s /usr/local/gcc/bin/gcc gcc  
    ln -s /usr/local/gcc/bin/g++ g++


添加man帮助

vi /etc/man.config

添加gcc的man路径到配置文件中

MANPATH /usr/local/gcc/share/man

保存退出即可生效,可使用man gcc查看帮助


© 著作权归作者所有

共有 人打赏支持
l
粉丝 0
博文 9
码字总数 2578
作品 0
银川
跟无闻学习GO Web 编程(二) -- 安装 Go 第三方包 go-sqlite3

32 位 windows 的安装 安装 sqlite3。到 http://www.sqlite.org/download.html 的页面中,找到 sqlite-dll-win32-x86-3071700.zip 下载解压,并把里面的 dll 文件复制到 windows/system32 目...

Tom-Lin ⋅ 2013/08/20 ⋅ 1

Linux安装gcc编译器详解(CentOS 6.5 64位系统)

本次安装针对CentOS 6.5 64位系统,由于在安装系统的时候并没有勾选安装gcc编译器,因此需要自行安装gcc编译器。 使用yum安装gcc 对于配备了yum的Linux发行版而言,安装gcc编译器就变得so ea...

天下杰论 ⋅ 2015/05/09 ⋅ 0

在 Mac OS X Lion 电脑中编译 gcc 4.6.1

在这篇文章中我们将讲述如何在 Mac OS X Line 计算机上通过源码方式安装最新的 GCC 稳定版本 4.6.1,而 Lion 上默认安装的 gcc 是 4.2.1. 为恶劣编译 gcc 源码,你需要安装 gcc (哦,好纠结...

鉴客 ⋅ 2011/09/24 ⋅ 2

configure/make/make install的作用

这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤。 ./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC, 并不是需要CC或GCC,它是个shell脚本...

j_m ⋅ 2012/07/10 ⋅ 0

Linux编译安装中configure、make和make install各自的作用

这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤。 ./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。...

Surjur ⋅ 2014/11/27 ⋅ 0

make: *** 没有指明目标并且找不到 makefile

make: *** 没有指明目标并且找不到 makefile。 停止。 make: *** 没有规则可以创建目标“install”。 停止。 不是没有makefile文件,而是你没有安装gcc编译器。先安装gcc编译器吧,与gcc相关...

月光正好 ⋅ 05/17 ⋅ 0

在Windows操作系统下的gcc

在Windows操作系统下的gcc 第一节 GCC家族概览GCC是一个原本用于Unix-like系统下编程的编译器。 不过,现在GCC也有了许多Win32下的移植版本。所以,也许对于许多Windows开发者来说,GCC还是一...

彼得 ⋅ 2012/10/11 ⋅ 0

Erlang查看版本的命令是那个

我在cenos6.5下安装了Erlang 但是不知道是Erlang的版本是那个 ,请问下输入erl后 查看Erlang的版本命令是那个

java迷途者 ⋅ 2015/06/15 ⋅ 3

Windows环境下的C/C++编译器

编译器介绍 在Windows下的开发实际上是VS(Visual Studio)一家独大,而在Linux上则是GCC占据主导地位,这两种编译器是和其对应的操作系统紧密联系在一起的。伴随着计算机技术的发展,GCC也有了...

wqli ⋅ 2015/12/14 ⋅ 0

Qt在Mac OS X下的编程环境搭建

尊重作者,支持原创,如需转载,请附上原地址:http://blog.csdn.net/libaineu2004/article/details/46234079 在Mac OS X下使用Qt开发,需要配置Qt库和编译器。编译器只能使用苹果公司自主研...

libaineu2004 ⋅ 2015/05/29 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

DevOps 资讯 | PostgreSQL 的时代到来了吗 ?

PostgreSQL是对象-关系型数据库,BSD 许可证。拼读为"post-gress-Q-L"。 作者: Tony Baer 原文: Has the time finally come for PostgreSQL?(有删节) 近30年来 PostgreSQL 无疑是您从未听...

RiboseYim ⋅ 5分钟前 ⋅ 0

Cube、Cuboid 和 Cube Segment

1.Cube (或Data Cube),即数据立方体,是一种常用于数据分析与索引的技术;它可以对原始数据建立多维度索引。通过 Cube 对数据进行分析,可以大大加快数据的查询效率 2.Cuboid 在 Kylin 中特...

无精疯 ⋅ 43分钟前 ⋅ 0

github太慢

1:用浏览器访问 IPAddress.com or http://tool.chinaz.com 使用 IP Lookup 工具获得github.com和github.global.ssl.fastly.net域名的ip地址 2:/etc/hosts文件中添加如下格式(IP最好自己查一...

whoisliang ⋅ 45分钟前 ⋅ 0

非阻塞同步之 CAS

为解决线程安全问题,互斥同步相当于以时间换空间。多线程情况下,只有一个线程可以访问同步代码。这种同步也叫阻塞同步(Blocking Synchronization). 这种同步属于一种悲观并发策略。认为只...

长安一梦 ⋅ 56分钟前 ⋅ 0

云计算的选择悖论如何对待?

人们都希望在工作和生活中有所选择。但心理学家的调查研究表明,在多种选项中进行选择并不一定会使人们更快乐,甚至不会产生更好的决策。心理学家Barry Schwartz称之为“选择悖论”。云计算为...

linux-tao ⋅ 58分钟前 ⋅ 0

Redis 注册为 Windows 服务

Redis 注册为 Windows 服务 redis 注册为 windows 服务相关命令 注册服务 redis-server.exe –service-install redis.windows.conf 删除服务 redis-server –service-uninstall 启动服务 re......

Os_yxguang ⋅ 59分钟前 ⋅ 0

世界那么大,语言那么多,为什么选择Micropython,它的优势在哪?

最近国内MicroPython风靡程序界,是什么原因导致它这么火呢?是因为他功能强大,遵循Mit协议开源么? 错!因为使用它真的是太舒服了!!! Micropython的由来,这得益于Damien George这位伟大...

bodasisiter ⋅ 今天 ⋅ 0

docker 清理总结

杀死所有正在运行的容器 docker kill $(docker ps -a -q) 删除所有已经停止的容器(docker rm没有加-f参数,运行中的容器不会删掉) docker rm $(docker ps -a -q) 删除所有未打 dangling 标...

vvx1024 ⋅ 今天 ⋅ 0

关于学习

以前学车的时候,教练说了这样的一句话:如果一个人坐在车上一直学,一直学,反而不如大家轮流着学。因为一个人一直学,就没有给自己留空间来反思和改进。而轮流着学的时候大家下来之后思考上...

mskk ⋅ 今天 ⋅ 0

压缩工具之gzip-bzip2-xz

win下常见压缩工具:rar zip 7z linux下常见压缩工具:zip gz bz2 xz tar.gz tar.bz2 tar.xz gzip 不支持目录压缩 gzip 1.txt #压缩。执行后1.txt消失,生成1.txt.gz压缩文件 gzip -d 1.txt....

ZHENG-JY ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部