Linux系统中二进制包和源码包的区别

Linux系统中二进制包和源码包的区别


起因是因为在安装nginx的时候和团队内的其他人安装方式不同,搞出一点小麻烦。
领导:你这个nginx是用源码包还是用二进制包下载的啊?
我:嗯?我用链接下载的,反正不是用的yum指令。
问题解决后准备深入了解这两种安装方式的差异,结合网上已有资料和自身心得整理于此,仅供交流。

源码包

源码包需要自行前往官方网站下载,它作为一群文件的集合,通常以压缩包的形式发行。它具有开源,安装功能自选,配置灵活等优点,但是也有安装需要编译,编译时间长等缺点。由于大多数软件都是C语言编写的,所以采用此种方法安装前需要安装gcc编译器,以帮助我们将C语言程序编译为Linux所能识别的语言。源码包中一般包含以下内容:源代码文件,配置文件,安装说明等等。
安装过程一般如下:
1.下载压缩包(采用指令下载这里一般会使用到巨长无比的链接)
2.解压缩包后进入目录
3.找到configure这个可执行文件所在的文件夹,执行./configure 有需要还有在后面加上–with (依赖名、模块名)或者是 --prefix 后面指定安装位置。(如果不指定软件安装位置,系统默认将可执行文件默认放在/usr /local/bin、库文件默认放在/usr/local/lib、配置文件默认放在/usr/local/etc、其它的资源文件放在/usr /local/share)。
4.make(编译),执行成功后执行make install(安装)

二进制包

二进制包在软件发布前已经编译过了(正因为此,这种方法是没有办法看到源代码的),所以相对于之前的那种安装方法,这种方法安装速度更快一些。目前两大主流的二进制包系统是 DPKG 包和 RPM 包,它们安装简单,用简单的几个指令就可以完成安装,更新,卸载等操作。这种方法依赖性非常强,比如在安装时经常会出现这样一种情况,明明你只要安装一个软件,安装过程中却自动下载许多相关的依赖。除此之外也曾看到过这样一种说法:由于源码包的安装方式是在本地编译的,所以和本机系统适配的更好,相应地执行效率也会更高,二进制包在这方面则不如源码包。
二进制包随安随运行,默认情况下,配置文件安装在/etc目录下、可执行文件安装在/usr/bin目录下、程序使用的函数库安装在/usr/bin目录下、软件手册和帮助文件分别保存在/usr/share的doc和man目录下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值