有些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
三、获取软件包全名
ls | grep 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提示错误
此时会提示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
1、先安装依赖软件cloog-ppl:
rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm//执行依旧error,也有依赖
此时 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警告
ppl安装成功
cloog-ppl软件依赖的软件安装成功,安装cloog-ppl:
rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm
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
此时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
安装"mpfr-2.4.1-6.el6.i686.rpm "即可解决功能模块的依赖:
rpm -ivh mpfr-2.4.1-6.el6.i686.rpm//安装成功
4、cpp软件依赖的软件安装成功,安装cpp:
rpm -ivh cpp-4.4.7-11.el6.i686.rpm//安装成功
5、gcc编译器的两个依赖软件都已经安装成功,接下来开始安装gcc。
rpm -ivh gcc-4.4.7-11.el6.i686.rpm//安装成功
查看软件是否安装:
rpm -q 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
安装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
我们开始安装gcc-c++的依赖软件:
gcc-c++依赖另外一个软件:
"libstdc++-devel"
查找libstdc++-devel软件包:
ls | grep libstdc++-devel//libstdc++-devel-4.4.7-11.el6.i686.rpm
安装libstdc++-devel:
rpm -ivh libstdc++-devel-4.4.7-11.el6.i686.rpm//安装成功
此时gcc-c++依赖软件安装完成。
gcc-c++编译器的依赖软件都已安装完成,开始安装gcc-c++:
查询gcc-c++编译器安装包:
ls | grep gcc//gcc-c++-4.4.7-11.el6.i686.rpm
安装gcc-c++编译器:
rpm -ivh gcc-c++-4.4.7-11.el6.i686.rpm//安装成功
此时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
卸载顺序和安装顺序由于依赖的关系,所以是相反的。