Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > 其他操作系统 > packages/ports 使用说明
【标  题】:packages/ports 使用说明
【关键字】:c,port,or,packages,ports
【来  源】:网络

packages/ports 使用说明

Your Ad Here 这篇写给 hopenet2 (HopeNet-FreeBSD-CDROM2) 用的,若无 HopeNet-FreeBSD-CDROMs,
还是可透过网路来享用 FreeBSD packages,大部分只要将文件的 /cdrom/ 改成
ftp://freebsd.ntu.edu.tw/freebsd/ 即可。

packages 为 FreeBSD 「招牌特色」之一,喜欢「玩软体」的人更不可错过这个
「招牌特色」! ;-)

= FreeBSD packages 使用说明 =
(hopenet2)

若已知想安装的 package 名称为何,如 joe (一个很受欢迎的 unix editor):
cd /cdrom/packages/All; pkg_add joe-2.8.tgz
装完後在 /var/db/pkg/joe-2.8/ 会留下相关的记录。
想知道这个 packages 装了什麽东西、装在何处,可以 tar tvfz joe-2.8.tgz 看看。

若不知道有什麽 package 可用,只是想试试各种 editor,可看一下
/cdrom/packages/editors/ 的 packages,假设看到了 emacs-19.34b.tgz 觉得有
兴趣,想知道这套 package 有什麽特色:
pkg_info emacs-19.34b.tgz

此外,less /cdrom/INDEX 有简要的说明,善用 INDEX 可很快找到合用的
package。

X X X X X X X X X X

packages/All/ 是编好现成可用的 binary,若想自己从 source 编,可透过 ports
来做这件事,举例来说,若想看看 pine-3.96.tgz 的 source:

请把 hopenet2 (也就是本张光碟) umount(umount /cdrom),换成 hopenet1 再
mount 上去(mount /cdrom)。

cd /cdrom/cvs-2.2/ports; less INDEX 查得(/^pine )位於 /usr/ports/mail
下:
mkdir -p /usr/ports/mail; cp -pR mail/pine /usr/ports/mail
mkdir -p /usr/ports/distfiles
cd /usr/ports/mail/pine
less files/md5 查得需要 pine3.96.tar.gz 这个档,也就是得设法将这个档
放到 /usr/ports/distfiles :
cp /cdrom/distfiles/pine3.96.tar.gz /usr/ports/distfiles
cd /usr/ports/mail/pine
make install
若要产生 package -> make package
至於 make 後面可加什麽 -> less /usr/share/mk/bsd.port.mk
如 "make extract", "make patch", "make configure" ....

/cdrom/distfiles/ 收集有 /cdrom/pkg/ (常用到的 packages) 相关的 source,
这些 source file 的「原始位(发源地)」可从 Makefile 看出,files/md5 列出
了需要用到的档名,除了到「发源地(通常在国外)」抓这些档外,也可先查查附近
的网站有没有这些档,建议的查询顺序为:
1. /cdrom/disftiles
2. ftp://freebsd.csie.nctu.edu.tw/pub/distfiles
3. ftp://freebsd.ntu.edu.tw/freebsd/distfiles
4. archie -c 要找的档名,archie 有现成的 package 可装,如:
pkg_add /cdrom/pkg/archie-1.4.1.tgz
man archie 可查得更多的讯息 (export ARCHIE_HOST=archie.ncu.edu.tw.)

找到需要的案後,放到 /usr/ports/distfiles ,待会 make 时就不会到「发源地」
辛苦的抓档。

/etc/make.conf 也可设定 /usr/ports/distfiles 缺少的档优先从何处抓取,如:
MASTER_SITE_BACKUP?= \
ftp://freebsd.csie.nctu.edu.tw/pub/distfiles/${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP}

ports 还有其它有趣的用法,比如说想找中文相关的 ports
cd /cdrom/cvs-2.2/ports; make search key=chinese | less
其它用法请参阅 ports 的 Makefile,或查查 Handbook(00www-mirror/)相关的章节。

X X X X X X X X X X

若自己有特殊需求,决定修改 source,试过後觉得很满意,想分享给其它朋友,举例
来说,pine 对中文处理有点问题,woju 做了些修改,让 pine 能中文相容:
cd /usr/ports/mail/pine/work/pine3.95/pine
cp send.c send.c.orig

cd .. (也就是回到 /usr/ports/mail/pine/work/pine3.95)
diff -u pine/send.c.orig pine/send.c > /usr/ports/mail/pine/patches/patch-woju2
... 其它的修改 ...
把相关档案压成 /cdrom/woju/patches/pine-3.95-8bit-patches.tgz
然後很高兴的到网路上 (tw.bbs.comp.386bsd) 和大家分享 :-)

上头用到 diff 的部分,woju 习惯用 "diff -u",vanilla 做了如下补充:
"core team 的标准做法是 diff -ruN old new"

/cdrom/woju/patches/*.txt 有相关的参考资料。

吴 庆 鸿,woju@freebsd.ee.ntu.edu.tw | 台大电机,http://freebsd.ee.ntu.edu.tw
时间不对了....要怎样改呢?:【上一篇】
FreeBSD 的在线帮助手册:【下一篇】
【相关文章】
  • ports 装不起来的几种状况
  • FreeBSD SNP 3.Client端--连线实作
  • FreeBSD SNP 4.inetd.conf设定
  • sysctl命令
  • FreeBSD命令adjkerntz简介(调节改变CMOS时间)
  • FreeBSD命令 lastcomm介绍 1
  • FreeBSD命令 lastcomm介绍 2. accton 介绍
  • FreeBSD命令 lastcomm介绍 3.实际操作
  • cvsup daemon
  • port tree 更新
  • 【随机文章】
  • 局域网自动断开的时间(winnt适用)
  • C#数据库编程总结
  • Linux操作系统内核和设备文件对话
  • 这个是blog,在她流行了2年后
  • swt与awt/swing比较
  • 如何安全的配置和应用MySQL数据库?
  • Redhat Linux 内核升级
  • 传奇世界 强化骼髅测试
  • GNU中的Makefile
  • 创建具有JScript的HTML的XML HTTP
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.