<返回更多

如何区分Linux中的源码包和二进制包

2020-02-06    
加入收藏

如何区分linux中的源码包和二进制包

Linux下的软件包可分为两种:

(1)源码包。

(2)二进制包。

1、源码包简单介绍:

实际上,源码包就是源代码程序的集合。

程序员们通过特定的语言编写出来的。

例如:JAVA项目中的一个个类文件的集合。

众所众知,计算机只能识别机器语言(二进制[0,1])。

所以源码包安装需要先将特定语言编写的源代码翻译成机器语言(0,1)。

这样我们才能在Linux安装该包。

Java为例:

(1)使用javac命令将java代码编译成.class字节码文件[与平台无关]

(2)使用java命令将字节码文件解释成平台机器码

当然java本身属于半编译半解释型语言。

此外,源码包的安装需要把源代码编译为二进制代码,因此安装时间较长

如果有小友使用源码包安装MySQL的,相信一定是深有体会。

当然源码包编译是比较费时间的,如果在编译过程中出现错误

对于不熟悉程序语言初学者将会很难解决。

因此。

为了解决使用源码包安装方式的这些问题,Linux 软件包安装出现了使用二进制包的安装方式。发现问题解决问题,一步步的不断发展。

2、Linux二进制包

二进制包就是源码包经过成功编译之后产生的包。

由于二进制包在发布之前就已经完成了编译的工作,因此用户安装软件的速度较快,且安装过程报错几率大大减小。这就解决了源码包安装出现的问题。

当然,二进制包是Linux下默认的软件安装包。

3、源码包 PK 二进制包

(1)源代码包

优点:

1.源代码程序

2.可以修改源代码(需要在自己的能力范围内)

3.可以选择所需功能

4.卸载方便(直接删除安装目录即可)

缺点:

1.安装过程步骤较多(./configure make make install等等)

2.编译时间长

3.安装难度大

安装位置:

/usr/local/软件名/

例如:mysql

一般是/usr/local/mysql/

(2)二进制包

优点:

1.包管理系统简单

2.由于是编译过,所以安装速度快

缺点:

1.不能看源代码

2.功能选择不如源码包灵活

3.有可能依赖比较麻烦

安装位置(默认位置):

1. /etc:配置文件安装目录

2. /usr/bin/:可执行命令安装目录

3. /usr/lib/:程序所使用的函数库保存位置

4. /usr/share/doc/:基本的软件使用手册保存位置

5. /usr/share/man/:帮助文档保存位置

4、补充:

安装的服务可以使用系统服务管理命令(service)来管理

本质上是运行了/etc/rc.d/init.d/的命令

例如:

service network start

实质:

/etc/rc.d/init.d/network start

如何区分Linux中的源码包和二进制包

 

补充:

rc{0..6}.d目录下都是一些符号链接文件

这些链接文件都指向init.d目录下的service脚本文件

如果使用的是rpm包管理器(二进制包),并且安装在默认位置,那么可以直接使用service命令来管理。

如果安装的是源码包不能直接利用service,启动服务的时候必须要使用绝对路径。

例如:

/usr/local/Apache/bin/apachectl start

当然这个可以自己配置成自启动服务。

最后,感谢大家支持。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>