Linux中rpm、src.rpm、源码包软件的安装

Linux中rpm、src.rpm、源码包的安装方法网上一大堆,但是分类不清晰导致大家迷惑,本人对网上的这些方法进行了总结归类,希望对大家有用。

一、二进制分发版(*.rpm形式的二进制软件包、*.tar.gz/*.tgz、*.bz2形式的二进制软件包)

  (一)、*.rpm形式的二进制软件包

安装:rpm –ivh packagename.rpm

卸载:rpm -e packagename

(二)、*.tar.gz/*.tgz、*.bz2形式的二进制软件包    

安装:tar  zxvf  *.tar.gz  或  tar  yxvf  *.bz2    

卸载:手动删除    

说明:*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载时用命令“rm  -rf  软件目录名”;如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,可以用命令“tar  ztvf  *.tar.gz”/“tar  ytvf  *.bz2”获取清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,y是调用bzip2解压,t是列出包的文件清单。更多的参数请参看手册页:man  tar。如果你更喜欢图形界面的操作,可以在X-Window下使用KDE的ArK压缩档案管理工具。

    

(三)、提供安装程序的软件包    

这类软件包已经提供了安装脚本或二进制的安装向导程序(setup、install、install.sh等),只需运行它就可以完成软件的安装;而卸载时也相应地提供了反安装的脚本或程序。例如SUN公司的StarOffice办公软件套件就使用名为setup的安装程序,而且在软件安装后提供反安装的功能,目前这种类型的软件包还比较少,因其安装与卸载的方式与Windows软件一样,所以就无需多讲了。  

 

二、源码分发版

(一)*.src.rpm形式的源代码软件包

以.src.rpm结尾的,这类软件包是包含了源代码的rpm包,在安装时需要进行编译。 这种包是源代码rpm包,如果直接用rpm -ivh来安装的话,会在/usr/src/redhat/SOURCES目录下找到一个tar.gz打包的源代码包.也就是说需要你自己手工解包编译安装.但是可以直接用:rpmbuild --rebuild xxxxx.src.rpm,来直接把源代码rpm包编译成普通的二进制rpm包.执行上述命令后,可以到/usr/src/redhat/RPMS/i386目录下找到可用的二进制rpm包.这类软件包有以下几种安装方法:

方法1:

rpmbuild --rebuild *.src.rpm(如果不能执行,则试试: rpm --rebuild *.src.rpm或rpm --recompile *.src.rpm)

cd /usr/src/redhat/RPMS/i386

rpm -ivh *.rpm

方法2:

1. 执行rpm -i you-package.src.rpm

2. cd /usr/src/redhat/SPECS

3. rpmbuild -bb your-package.specs 一个和你的软件包同名的specs文件

这时,在/usr/src/redhat/RPM/i386/ (根据具体包的不同,也可能是i686,noarch等等) 在这个目录下,有一个新的rpm包,这个是编译好的二进制文件。执行:rpm –ivh new-package.rpm即可安装完成。

方法3:

1. 执行rpm -i your-package.src.rpm

2. cd /usr/src/redhat/SPECS

3. rpmbuild -bp your-package.specs 一个和你的软件包同名的specs文件

4. cd /usr/src/redhat/BUILD/your-package/ 一个和你的软件包同名的目录

5. ./configure 这一步和编译普通的源码软件一样,可以加上参数

6. make

7. make install

    卸载:rpm  -e  packgename

(二)*.tar.gz/*.tgz、*.bz2形式的源代码软件包  

 

安装:tar  zxvf  *.tar.gz  或  tar  yxvf  *.bz2  先解压    

然后进入解压后的目录:    

./configure  配置    (./configure --help)

make  编译    

make  install  安装    

卸载:make  uninstall  或 手动删除    

说明:建议解压后先阅读说明文件,可以了解安装有哪些需求,有必要时还需改动编译配置。有些软件包的源代码在编译安装后可以用make  install命令来进行卸载,如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,那你应该在编译前进行配置,指定软件将要安装到目标路径:./configure  --prefix=目录名,这样可以使用“rm  -rf  软件目录名”命令来进行干净彻底的卸载。与其它安装方式相比,需要用户自己编译安装是最难的。

你可能感兴趣的:(src.rpm,Linux中rpm,源码包软件的安装)