这篇文章主要是说明如何作在 Solaris 2.5,2.6 及 7 上面, 能够使用 pkgadd 来读取, 并安装的 package程
式. 在 AnswerBook 2 里有详细的讨论作 package 的过程. 以下将会一步一步
说明如何作 package.
注意: 在以下某些步骤中, 需要在你的机器上有 root 的权利才能使用.
** 选择你的软体
找寻软体的原始程式码, 将它下载. 读取所有和安装有关的文件. 并注意所有的设
定档, 当然也包含检查 Makefile. 解可执行档案及它们的 link 情况.
** 读取 manuals 和 man page
虽然许多人都不太愿意去读这些 man page, 或许你会觉得看 man pgae 是很累的事
但是最好还是看一下, 下面这些指令的 man page.
pkgadd, pkginfo,pkgmk,pkgparam,pkgproto,pkgtrans,pkgrm
这里有许多的 option 还有详细的说明, 你必需解, 以方便以下的说明.
** 设定目录结构
通常, 我惯建立一个目录, 如 /opt/SoftWare . 一般而言, 大部份的软体都会安装
在 /usr/local 下, 建立 /opt/SoftWare 是要存放将要做成 package 的软体, 而
避免和原来 /usr/local 下的档案混在一起. 在下一个步骤将会说明如何使用它.
** 编译并安装软体在 /usr/local 或其它地方
改变目录至你存放软体原始程式的位置, 并且读取相关的指令使用. 大部份的软体都
会有详细的安装指令, 这些指令通常以 README INSTALL 等方式的档名出现. 仔细的
读取, 并将你的软体编译成可执行档. 当你的软体编译完成, 你会执行如 "make install"
之类的指令, 用以安装你的程式到 /usr/local 或其它地方. 在执行 "make install"
之前, 你需要做以下的动作:
% su
% cd /usr
% mv local local.full
% ln -s local /opt/SoftWare
然後再执行 "make install" , 这样一来, 虽然是装在 /usr/local , 但实际上是
放在 /opt/SoftWare 里面.
** 建立 prototype 和 pkginfo 这两个档
改变目录至 /usr/local ...
% cd /usr/local
执行以下的指令 ...
% find . -print | pkgproto > prototype
这行指令会建立一个 prototype 档在 /usr/local
接下来, 使用你的文字编辑器 (如 vi), 来编辑 prototype 这个档, 加入下面那行
i pkginfo=./pkginfo
并将 user 和 group 均改成 bin. 以下是一个修改完的例子...
i pkginfo=./pkginfo
d none bin 0755 bin bin
f none bin/prog 0755 bin bin
d none doc 0755 bin bin
f none doc/doc1 0644 bin bin
d none lib 0755 bin bin
f none lib/lib1 0644 bin bin
d none man 0755 bin bin
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 使用 建立 指令 安装 执行 package 格式 一个 /usr/local |
注册
个人空间
