主题 : 用checkinstall制作rpm软件包-简单教程
阻碍你前进的不会坎坷地路途,而是你脚中的一个小石子。
级别: PW官方团队
UID: 901113
精华: 0
发帖: 1583
威望: 358 点
金钱: 885 两
贡献值: 0 点
PW积分: 25 点
在线时间: 3899(时)
注册时间: 2006-09-09
最后登录: 2009-06-23
楼主  发表于: 2007-12-24 16:09

用checkinstall制作rpm软件包-简单教程

Checkinstall 是一个能从 tar.gz类的源代码自动生成RPM/Debian或Slackware安装包的程序。

这样使你能用几乎所有的 tar.gz 类的源代码生成“干净”的安装或者卸载包。

用checkinstall做rpm包挺方便的。

编译源码包的时候在/.configure --prefix=/usr&make之后运行checkinstall就可以了,

然后在/usr/src/mBuild/RPMS/(目录按照实际服务器架构而定)

里面相应文件夹里面就可以找到rpm包了

测试环境:centos-4.5-i386服务器架构

现在以把squid-2.6.STABLE12-20070418.tar.gz编译成squid-2.6.STABLE12-20070418-1.i386.rpm为例说明具体的方法。

具体的步骤:

1、rpm -ivh checkinstall-1.6.0-1.2.el4.rf.i386.rpm (安装checkinstall)

2、locate installwatch (解决在使用checkinstall找不到installwatch 的问题)

3、cp /usr/bin/installwatch  缺少installwatch的目录

4、tar zxvf squid-2.6.STABLE12-20070418.tar.gz

5、cd squid-2.6.STABLE12-20070418

6、./configure --prefix=/usr/local/squid  --sysconfdir=/etc  --enable-arp-acl  --enable-linux-netfilter  -enable-err-language="Simplify_Chinese"  --enable-storeio=ufs  --enable-default-err-language="Simplify_Chinese" --enable-auth="basic"  --enable-baisc-auth-helpers="NCSA"  --enable-underscore (这里选项可以根据自己的需求配置)
  之后,会生成 Makefile

7、make

8、checkinstall (会出现一些选项,默认的选项即可)

然后在/usr/src/mBuild/RPMS/里面相应的文件夹里面就可以找到rpm包了

cd /usr/src/redhat/RPMS/i386

安装rpm -ivh squid-2.6.STABLE12-20070418-1.i386.rpm

卸载rpm -e squid-2.6.STABLE12-20070418

备注:rpm在linux架构的优点就不说了。另外把源代码自做成rpm能省去重新编译之苦。
[ 此贴被木逸在2007-12-24 16:22重新编辑 ]
本帖最近评分记录:
  • 威望:+10(骨头)
  • 老子曰:莫装逼,装逼雷都不劈!没卵子找茄子提溜,回炉吧你!
    级别: 管理员
    UID: 403582
    精华: 3
    发帖: 21867
    威望: 129280 点
    金钱: 2810 两
    贡献值: 139880 点
    PW积分: 955 点
    群组: PHPWind 七剑
    在线时间: 5518(时)
    注册时间: 2005-08-02
    最后登录: 2009-07-05
    沙发  发表于: 2007-12-24 16:25

    一个科学的内核结构和文件结构,大大减少了维护的时间。

    支持!平安夜顶一个~!
    咨询QQ:23129151
    级别: 二星会员
    UID: 1260499
    精华: 0
    发帖: 380
    威望: 7 点
    金钱: 39 两
    贡献值: 0 点
    PW积分: 15 点
    在线时间: 15(时)
    注册时间: 2007-06-23
    最后登录: 2009-05-31
    地毯  发表于: 2007-12-25 17:37

    楼主辛苦了哈  :victory:  谢谢分享哦。不错的说