首页 > 代码库 > Linux下二进制包和源代码包

Linux下二进制包和源代码包

主要提供三种格式的mysql包:rpm格式、二进制格式、源码格式:(tar打包,gz压缩)

rpm格式: libjpeg-devel-6b-33.x86_64.rpm       #rpm格式很好区分,

二进制包: mysql-3.23.58-pc-linux-i686.tar.gz   #二进制格式的包名字很长,有版本号、适应平台、适应的硬件类型等,格式:mysql-<版本>-<OS>-tar.gz

源码包:    php-5.2.14.tar.gz                            #而源码格式仅仅就是一个版本号的tar包。#cj 安装区别:解压、./config、make、make install

 

source code 是程序员写的码, 
binary code 是机器跑的码。 
source code 得经过 compile 才能成为 binary code 。 

RPM 有分兩種:binary rpm 跟 source rpm 。 
前者是編好的 binary ,安裝就可用。 
後者是還沒編好的 source ,需 rebuild 之後才能安裝

 

源代码方式和二进制包是软件包的两种形式。二进制包里面包括了已经经过编译,可以马上运行的程序。你只需要下载和解包(安装)它们以后,就马上可以使用。源代码包里面包括了程序原始的程序代码,需要在你的计算机上进行编译以后才可以产生可以运行程序,所以从源代码安装的时间会比较长。

 

Linux下有个命令叫file,因为Linux并不是按照后缀名来判断文件类型的。所以一般在不清楚文件到底是什么类型的时候,就用file这个命令去判断。
file php-5.2.14.tar.gz 
php-5.2.14.tar.gz: gzip compressed data, was "php-5.2.14.tar", from Unix, last modified: Wed Jul 21 22:32:34 2010, max compression
这个php-5.2.14.tar.gz 明显是个gzip的压缩包,这样的文件一般都是用tar zxvf 命令去解包然后去配置编译安装的,通常情况把这种安装方法叫做源码编译安装。

file libjpeg-devel-6b-33.x86_64.rpm 
libjpeg-devel-6b-33.x86_64.rpm: RPM v3 bin i386 libjpeg-devel-6b-33
这个libjpeg-devel-6b-33.x86_64.rpm 文件,就是个标准的redhat系列发行版本所用的RPM格式软件包。一般在RHEL、CentOS、SUSE、OracleLinux下都可以安装类似的RPM包。标准的安装方法是rpm -ivh。

基本上红帽系列Linux发行版本安装软件就这两种方法了。还有经常被提起的yum,其实就是由yum自动判断rpm包的依赖,然后一次性把所有需要安装的N个rpm统一下载安装,其实原理和一个个的安装rpm没有什么本质区别。

 

 

一般在官网上下载的源码包都是以:tar.gz tar.bz2结尾的
经过编译的一般是以.rpm来结尾的
linux下的文件扩展名没有实际的意义
这样做只是为了方便你去查看是什么类型的包
然后采取什么样的方式去安装和配置
当然有时候并不能从文件的扩展名去查看什么类型的包
因为文件名可以随意的去修改
可以使用file这个命令去查看文件包的类型.