| 
       
	RPMs包是指“*.src.rpm”这类的rpm包。这类软件包是包含了源代码的rpm包,安装时需要进行编译。平时常见的“*.rpm”包是已经将源代码编译成了二进制文件,所以直接用rpm -ivh命令就能安装了。 
	1、安装所需的软件包: 
	 
	yum install gcc-c++ automake autoconf rpm-build 
	 
	2、随便找一个RPMs包下载: 
	 
	cd /tmp 
	wget ftp://rpmfind.net/linux/freshrpms/fedora/linux/6/rar/rar-3.7.0-0.1.beta1.fc6.src.rpm 
	 
	3、开始安装: 
	1)执行 
	 
	rpm -ivh rar-3.7.0-0.1.beta1.fc6.src.rpm 
	 
	2)进入/usr/src/redhat/SPECS目录 
	 
	cd /usr/src/redhat/SPECS 
	
		-bash: cd: /usr/src/redhat/SPECS: No such file or directory 
 
	发现没有这个目录,那么src.rpm装到什么地方了呢? 
	 
	find / -name "*rar*" 
	 
	搜索带有rar字符串的文件,找到了: 
	
		/root/rpmbuild/SOURCES/rarlinux-3.7.b1.tar.gz 
		/root/rpmbuild/SPECS/rar.spec 
 
	原来安装到/root/rpmbuild目录了。 
	3)查看目录 
	 
	cd /root/rpmbuild 
	ls 
	 
	看到该目录下有两个目录,SOURCES和SPECS,SOURCES目录里是是源代码包,SPECS目录里是.spec脚本。 
	4)编译RPM包 
	 
	cd /root/rpmbuild/SPECS 
	rpmbuild -bb rar.spec 
	 
	5)在/root/rpmbuild/RPMS/i386目录生成rar-3.7.0-0.1.beta1.fc6.i386.rpm文件 
	 
	cd /root/rpmbuild/RPMS/i386 
	rpm -ivh rar-3.7.0-0.1.beta1.fc6.i386.rpm 
	 
	安装完成。 
	6)查看rar命令 
	 
	rar --help 
	 
	4、其它 
	rpmbuild命令还有其它选项: 
	1)rpmbuild -bb xxx.spec 
	只生成二进制格式的rpm包(*.rpm)。 
	2)rpmbuild -bs xxx.spec 
	只生成src格式的rpm包(*.src.rpm)。 
	3)rpmbuild -ba xxx.spec 
	生成源代码包和二进制包(生成rpm和src.rpm)。 
	4)rpmbuild -bp xxx.spec 
	对SPEC文件%prep部分进行检测。 
	5)rpmbuild -bc xxx.spec 
	对SPEC文件%build部分进行检测。 
	6)rpmbuild -bi xxx.spec 
	对SPEC文件%install部分进行检测。 
	参考资料: 
	http://www.hyzca.com/base/building-rpms.html 
	http://blog.csdn.net/lphpc/article/details/565823 
	http://www.php-oa.com/2010/05/11/linux-rpm-build.html 
	http://www.cnblogs.com/dlbrant/archive/2009/02/17/1392461.html 
      (责任编辑:IT) |