Linux中安装软件的背景知识介绍-直接安装和编译安装的区别

3497 人浏览 | 时间: 2017-02-18 09:53:03 | 作者: codexia

    在Linux安装软件,经常会让Linux菜鸟头痛不已。一会是yum,一会是make install,真是傻傻分不清楚。反正教程怎么说,就怎么做,至于为什么,完全不知道。今天我终于领悟了Linux安装软件的套路,所以分享给大家。可以让Linux菜鸟彻底认识Linux安装软件这些背景。

    本来也是因为在安装GCC编译器领悟的,下面就用GCC来说事。

    GCC是开源组织开发的软件,大家都可以免费使用。Linux的开源版本众多,但是会分为几大类流派,所以GCC编译好的版本,即可以供你直接安装使用的版本,叫做发行包安装程序,也就是Windows上常说的安装包,都是针对这几类Linux编译生成的安装包。安装包也叫作二进制包,就是编译成二进制的可执行文件了。这样的安装包,就和Windows上的软件一样,安装就可以使用了。

    然而各大公司从Linux的基本版本定制开发出来了各种版本,如RedHat、Centos、Ubuntu等等。这些版本,有些是开源免费的,有些是商业版本,不同的版本差异较大。
    作为开源组织,自然也不会为某个公司工作,所以不会提供某些系统版本的编译版本,而只是提供基本Linux版本的编译版本,供开源使用。所以,这些系统如果要提供GCC安装包,就需要开发商针对这个系统编译好,制作成安装包,供用户下载安装使用。因为对某一个系统来说,系统的环境是确定的,编译好的安装包在这个系统是可以正常运行的。也因此,我们下载安装包的时候要看清楚系统版本版次。
    不过好在这些系统开发上都提供了软件管理工具,也就我们常说的yum之类的工具,它可以直接从对应的软件安装包库里获取这个系统合适的安装包,供用户下载安装。
    而开源软件发展的很快,版本迭代也特别快,太新的版本可能不稳定。所以系统开发商也不会时刻跟进编译最新的版本生成安装包。这也就是yum里面的版本比官网提供下载的版本低的原因。软件官网如GCC一般都是提供源码,供大家自行编译安装。
    所以,Linux中安装软件分为两类,一是直接下载软件安装包来安装,二是下载软件官网的源码包,自行编译然后再安装。直接安装的方式就是yum等方式,自行编译的就是下载压缩包、解压、配置、准备基础支持的库(如果没有,需要提前安装,如果yum里面没有安装版,也需要先编译再安装),然后编译,再安装。
    直接安装当然是最简单的。yum这样的方式不仅可以让你方便,还很省心。yum会自动处理依赖关系,会自动被安装上去。因为yum里面的版本安装需要的东西都是在软件库里都事先准备好了的。而源码编译安装也就是常见的./configure、make、make install这种方式。这种方式很容易出错,一旦出错,你得想办法去解决错误。经常出现的问题就是依赖库没有安装,导致无法安装,或者版本不对,你就需要去将依赖的库的版本升级成对应的版本。

    可以说,不熟悉Linux的新手,根本就不明白yum和make install是干嘛的,反正教程都是叫这么干的,也只知道这是两种安装方式,却不知道为什么。

    上面说了编译方式和为什么会出现这样的编译方式,下面再来说说下载那点事,因为和安装有关,先简单说说。

    相信经常折腾安装软件的朋友,肯定知道了wget命令。然后安装软件的方式还可以直接下载到我们的电脑,然后通过FTP客户端上传到Linux服务器,然后再安装。

请微信扫码阅读
为防止恶意爬虫,
已开启反爬机制

相关阅读