码迷,mamicode.com
首页 > 其他好文 > 详细

编译安装和软件包安装

时间:2016-10-18 23:39:59      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:编译安装和软件包安装

Linux平台上的软件安装分为编译安装和软件包安装,其中软件包安装最为简单,可以YUM直接安装,也可以把RPM包下载到本地再安装,总之省时省力,另外如果你想看YUM安装后,软件所涉及的目录有哪些,比如配置文件、程序文件都放在什么地方,也很简单,使用下面的命令:

rpm -ql 软件名称

如下图:

技术分享


今天我们来说一下编译安装是什么,为什么要用编译安装。

一般我们从网上下载的tar.gz的包都是源码包,针对源码包的软件安装成为编译安装。什么叫编译?简单来说就是把源代码变成适合当前平台的二进制文件,让内核可以识别。


编译安装的大体过程如下:运行源码包中的config或者configure检测程序(相信大家肯定熟悉),这个脚本一般后面都会跟一些参数,不同软件参数会不同。这个程序就是找到所需的函数库,编译器和其他资料,然后会生成一个Makefile文件,如果过程顺利,你就可以运行make进行安装,此时就Make命令就会读取生成的Makefile文件然后调用GCC编译器进行编译,然后最后通过make install命令进行安装。有时我们会看到下面的命令使用方式:

make && make install

这就是把两个命令一次录入,然后按顺序执行,好处是不同等着。软件的安装位置、启动的特性等都是在configure阶段所指定的。具体可以使用下面命令来查看软件支持多少可用参数:

./configure --help


这里需要说明的是:GCC其实可以直接编译程序文件,为什么还需要根据makefile,这里最直接的原因就是效率问题,一个软件不可能只有一个程序文件,还有其他的所需文件,如果用GCC逐个编译实在太麻烦,所以用makefile比较高效。


注意事项:makefile生成以后,可以运行make test进行测试。另外如果第一次编译失败,第二次编译之前(make之前,configure之后)要运行make clean命令把之前的编译清除掉。

make clear:只是删除make产生的文件,它不能删除当前目录下产生的配置文件和build产生的文件

make distclean:类似于make clear但是它可以删除当前目录下产生的配置文件和build产生的文件


不是所有软件都可以通过软件包管理器安装,尤其是新版的软件。

本文出自 “小恶魔的家” 博客,请务必保留此出处http://littledevil.blog.51cto.com/9445436/1863043

编译安装和软件包安装

标签:编译安装和软件包安装

原文地址:http://littledevil.blog.51cto.com/9445436/1863043

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!