vlambda博客
学习文章列表

Linux系统自定义安装C语言gcc编译器图文详细教程

有些Linux系统自带gcc编译器,有些则不带,比如CentOS版本的系统就没有gcc,我们在安装一些C语言开发的软件时,就没有办法进行编译,那就需要我们手动进行安装gcc,手动安装较麻烦,依赖了一些软件和库。


接下来会比较绕,是一个过程,需要经历的,所以带你们经历一遍。

不想经历,直接拉到最下面,有代码...



安装之前尽量去看一下自己的Linux有没有自带gcc

使用rpm指令:
rpm -q gccrpm -q gcc-c++

如果出现这样,就表示已经安装过了,就无需安装了,如果没有,往下看。


Linux系统安装gcc编译器 

这里使用rpm本地安装,系统挂载本地系统镜像,在镜像文件中Packages目录中有提供这两个rpm安装包,所以无需云在线安装。

    "gcc-4.4.7-11.el6.i686.rpm"             //用来编译C语言的

    "gcc-c++-4.4.7-11.el6.i686.rpm"     //用来编译C++语言的

 

一、首先进入root用户,一个漫长的过程开始了...

我们需要在root用户下进行安装。

su root
输入root管理员密码即可。



二、找到gcc的软件包,在系统本地镜像下的Packages目录,先进入这个目录。

进入挂载系统镜像所在的目录,找到Packages软件包目录,进入该目录。

cd /media/系统本地镜像挂载的目录/Packages

Linux系统自定义安装C语言gcc编译器图文详细教程


三、获取软件包全名

ls | grep gcc

Linux系统自定义安装C语言gcc编译器图文详细教程

"gcc-4.4.7-11.el6.i686.rpm"                 //用来编译C语言的
"gcc-c++-4.4.7-11.el6.i686.rpm"         //用来编译C++语言的


四、我们先安装gcc

执行命令:

rpm –ivh gcc-4.4.7-11.el6.i686.rpm//执行后,error提示错误

Linux系统自定义安装C语言gcc编译器图文详细教程

此时会提示error失败,因为安装gcc有很多依赖的软件,需要先安装依赖的软件。

gcc依赖两个软件:

            cloog-ppl>= 0.15 is needed by gcc-4.4.7-11.el6.i686

            cpp = 4.4.7-11.el6 isneeded by gcc-4.4.7-11.el6.i686

 


    我们开始安装gcc的依赖软件

安装gcc软件时安装失败:报了依赖错误。

gcc需要另外两个软件的支持:"cloog-ppl"和"cpp"。

 

我们查询这两个软件的安装包进行安装:
ls | grep cloog-ppl//cloog-ppl-0.15.7-1.2.el6.i686.rpmls | grep cpp //cpp-4.4.7-11.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程


1、先安装依赖软件cloog-ppl:
rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm//执行依旧error,也有依赖

Linux系统自定义安装C语言gcc编译器图文详细教程

此时 cloog-ppl软件又产生了依赖:
libppl.so.7is needed by cloog-ppl-0.15.7-1.2.el6.i686
libppl_c.so.2is needed by cloog-ppl-0.15.7-1.2.el6.i686

                    

但是这里依赖的是so功能模块,lib后面的ppl就是模块所在的软件,所coog-ppl软件依赖两个"功能模块",我们只需要安装ppl软件就能解决功能模块依赖。

             

安装gcc依赖软件cloog-ppl依赖的功能模块所在的软件"ppl":  

ls | grep cpp //查询到该软件包全名//ppl-0.10.2-11.el6.i686.rpm


2、安装依赖软件ppl:
rpm -ivh ppl-0.10.2-11.el6.i686.rpm//出现进度条,表示安装成功,忽略win警告       

Linux系统自定义安装C语言gcc编译器图文详细教程

ppl安装成功


cloog-ppl软件依赖的软件安装成功,安装cloog-ppl:

rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程

cloop-ppl安装成功

一个依赖软件安装成功,再安装第二个cpp软件:
rpm -ivh cpp-4.4.7-11.el6.i686.rpm//依旧error,又有依赖//libmpfr.so.1 is needed by cpp-4.4.7-11.el6.i686

Linux系统自定义安装C语言gcc编译器图文详细教程


此时cpp软件安装失,cpp软件也依赖一个功能模块:

libmpfr.so.1is needed by cpp-4.4.7-11.el6.i686

       依赖mpfr这个软件包

 

所以我们先安装gcc依赖软件cpp依赖的功能模块所在的软件"mpfr"。



3、安装mpfr软件:               
ls | grep mpfr //查询到该软件包全名//mpfr-2.4.1-6.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程


安装"mpfr-2.4.1-6.el6.i686.rpm "即可解决功能模块的依赖:  

rpm -ivh mpfr-2.4.1-6.el6.i686.rpm//安装成功

Linux系统自定义安装C语言gcc编译器图文详细教程

 

4、cpp软件依赖的软件安装成功,安装cpp:

rpm -ivh cpp-4.4.7-11.el6.i686.rpm//安装成功

Linux系统自定义安装C语言gcc编译器图文详细教程



5、gcc编译器的两个依赖软件都已经安装成功,接下来开始安装gcc。
rpm -ivh gcc-4.4.7-11.el6.i686.rpm//安装成功

Linux系统自定义安装C语言gcc编译器图文详细教程


查看软件是否安装: 

rpm -q gcc//输出安装包全名,表示安装成功。

Linux系统自定义安装C语言gcc编译器图文详细教程




五、安装C++编译器g++,gcc只是C语言编译器。

gcc-c++-4.4.7-11.el6.i686.rpm

 

首先获取软件包全名:

ls | grep gcc-c++//gcc-c++-4.4.7-11.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程


安装gcc-c++:
rpm -ivh gcc-c++-4.4.7-11.el6.i686.rpm//安装失败,又TM产生依赖软件//libstdc++-devel= 4.4.7-11.el6 is needed by gcc-c++-4.4.7-11.el6.i686       

Linux系统自定义安装C语言gcc编译器图文详细教程


我们开始安装gcc-c++的依赖软件:

gcc-c++依赖另外一个软件:

    "libstdc++-devel"

 

查找libstdc++-devel软件包:
ls | grep libstdc++-devel//libstdc++-devel-4.4.7-11.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程


安装libstdc++-devel:          

rpm -ivh libstdc++-devel-4.4.7-11.el6.i686.rpm//安装成功

Linux系统自定义安装C语言gcc编译器图文详细教程

此时gcc-c++依赖软件安装完成。
 

gcc-c++编译器的依赖软件都已安装完成,开始安装gcc-c++:

查询gcc-c++编译器安装包:     

ls | grep gcc    //gcc-c++-4.4.7-11.el6.i686.rpm

Linux系统自定义安装C语言gcc编译器图文详细教程


安装gcc-c++编译器:
rpm -ivh gcc-c++-4.4.7-11.el6.i686.rpm //安装成功

Linux系统自定义安装C语言gcc编译器图文详细教程

此时gcc-c++安装成功

 

查看软件是否安装:
 rpm -q gcc-c++ //输出安装包全名,表示安装成功。



OK,gcc编译器全部安装成功过程就这些…………

 






------------华丽的分割线------------


总结

安装gcc和gcc-c++软件依赖过程:

            软件:gcc

                依赖软件:cloog-ppl

                     依赖功能模块:

                            libppl.so.7

                            libppl_c.so.2

                            直接安装ppl软件即可解决功能模块依赖

                    

                依赖软件:cpp

                     依赖功能模块:libmpfr.so.1

                            直接安装mpfr软件即可解决功能模块依赖

                    

            软件:gcc-c++

                依赖软件:libstdc++-devel

 

    

Linux系统自定义安装gcc和g++安装顺序:代码
rpm -ivh ppl-0.10.2-11.el6.i686.rpmrpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpmrpm -ivh mpfr-2.4.1-6.el6.i686.rpmrpm -ivh cpp-4.4.7-11.el6.i686.rpmrpm -ivh  gcc-4.4.7-11.el6.i686.rpmrpm -ivh libstdc++-devel-4.4.7-11.el6.i686.rpmrpm -ivh gcc-c++-4.4.7-11.el6.i686.rpm



Linux系统卸载gcc和g++顺序:代码
rpm -e gcc-c++ //卸载g++rpm -e gcc //卸载gccrpm -e libstdc++-devel //卸载libstdc++-develrpm -e cloog-ppl      //卸载cloog-pplrpm –e ppl      //卸载pplrpm –e cpp //卸载cpprpm –e mpfr //卸载mpfr


卸载顺序和安装顺序由于依赖的关系,所以是相反的。