« | October 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | |
| 公告 |
暂无公告... |
Blog信息 |
blog名称: 日志总数:29 评论数量:48 留言数量:0 访问次数:189433 建立时间:2006年5月24日 |

| |
[Linux开发]unix典型软件安装包pkg的制作 网上资源
wangchuanfa 发表于 2006/11/7 10:49:29 |
pkg是unix上典型的软件安装现在介绍pkg在sco和unixware上的使用首先建立的是包的描述文件,prototype (package information file)下面是个例子:proto# this file is example for prototype# file pkgproto .=/usr/local# s /foo/bar/etc/mount=../etc/mount!PREJECTDIR=/usr/local!BIN=$PROJECTDIR/bin!search /usr/local/bind none /usr/local/hzh 0644 root bini pkginfo=xixiinfoi /usr/local/xixi/version=versiond none /usr/local/bin 0755 root bin!default 644 root otherf src /usr/local/bin/README=src/README 0755 root bin# 是注解符号# !开始的是个命令param=valuePREJECTDIR=/usr/local# 表示设置一个环境变量PREJECTDIR# search 表示加入path的命令搜索路径# default 表示创建文件时的属主,J=P^(cD.p\VI.业育v件教权限等设置# include 包含其他proto文件# 其他不带!的由以下的格式描述part ftype class pathname [major minor] [mode owner group]part 部分描述,一个软件包可以分几个部分 例如 1 driver 2 develop env该域可以省略,省略时为1ftype 文件的描述 b 块设备文件 c 字符设备文件 d 目录 f 标准的文件 i 安装信息文件# 两个重要的文件是版本 version和包描述文件pkginfo(注意pkginfo是关键字,而# 等号右边的是info文件名,在稍后将会介绍该文件的使用方法.# depend action request可以不要,request 是你在安装包前执行的文件# 在request中可以加入一些临时要出入的信息(例如客户资料)i pkginfo=xixiinfoi version=versioni depend=depend l 连接文件 p 命名管道 s 符号连接 class 描述文件的所属 例如 src exec...pathname 所在的路径如果是符号连接则会有路径2 例如:|{{网vMZG网7fz^0Dn@+
q+l中W软专xjq_+*教pO)ktA教育&.F供I管s /foo/bar/etc/mount=../etc/mountmajor minor 是设备文件的主辅助号mode owner group 是创建时的权限 用户和群组
你所有的包中的文件啦目录啦都要用上述方法创建当然有个快速建立该文件的方法使用pkgproto .=/usr/local其中.表示你源文件的目录路径/usr/local为你要安装的路径
pkginfo 文件是描述该包的显示信息,版本信息等以下是一个pkginfo 的例子:注意我使用hzhinfo是为了与proto文件中的pkginfo相对应ARCH=i386 硬件信息PSTAMP="yymmddhhmm" #出品时间PKG="包名"NAME="包的说明"VERSION="3" #版本VENDOR="卖主信息"HOTLINE="热线"EMAIL="email"VSTOCK="0122c3f5566"CATEGORY="system.run"ISTATES="S 2"RSTATES="S 2"除此之外还可以定义BASEDIR=标准路径CATEGORY=类别CLASSES=级别DESC=包描述信息MAXINST=最多安装多少个包...
好准备好以上几个文件后就可以制作包了首先产生包pkgmk -o -d /tmp -f proto 其中 -o 表示覆盖已有的包 -d 路径或设备(/def/fd0) -f proto的文件名如果出现## Packaging complete.表示包顺利建成你现在可以使用pkgadd -d /tmp来试着安装了
当安装成功可以正式发行时你可以使用pkgtrans /tmp /tmp/xixi.pkg all将/tmp 下的包创建为xixi.pkg以后你就可以将xixi.pkg 带走在其他的机器上顺利的安装.
|
|
|