1、软件的安装卸载是很平常的事情,但是在linux上面却也这么的不简单。Linux的其中一个哲学思想就是 一个程序只做一件事,并且做好。 组合小程序来完成复杂任务。这样做有很多好处。但世界上的东西总是两面的,有得必有失。各个小程序之间往往会存在着复杂的依赖关系。

2、再往前走一步。软件最初的安装方式只有一种,那就是源代码编译安装,这种方式安装的软件更贴近本机的系统运行环境,但也更复杂。不仅要解决软件之间的依赖关系(所依赖的软件还要再编译安装),还要配置开发编译环境(可能会抓狂的),一切都完成了以后还要指定各种的编译参数,而且编译所耗费的时间也比较长。在问题出现的时候,总是有些人或组织来为我们解决问题。所以这时就有了包管理器,如redhat系的rpmdebian系的dpt,dpkg。

3、包管理器为我们解决了编译的问题,使用起来非常的快捷。但就像我们第一段所说的,依赖关系还是存在的,虽然简单了很多,但还是会发生几个小时过去还没有安装上软件的情况发生。那么包管理器的前端工具就又出现了,它会为我们自动解决依赖关系,从此安装软件变的简单多了。

4、虽说前端工具貌似可以解决所有问题,但在我们使用系统的过程中,它也是有局限性的。源代码安装也是很常用到的,但前端工具可以很简单的解决开发环境和依赖关系的问题。



摘录自:http://www.codesec.net/view/220521.html