FreeBSD handbook中文版 4 安装应用程序:Packages 和Ports( 五 )


Receiving xchat-1.3.8.tar.bz2 (305543 bytes): 100%
305543 bytes transferred in 2.9 seconds (102.81 Kbytes/s)
===> Extracting for xchat-1.3.8
>> Checksum OK for xchat-1.3.8.tar.bz2.
===> xchat-1.3.8 depends on executable: bzip2 - found
===> xchat-1.3.8 depends on executable: gmake - found
===> xchat-1.3.8 depends on shared library: gtk12.2 - found
===> xchat-1.3.8 depends on shared library: Imlib.5 - found
===> xchat-1.3.8 depends on shared library: X11.6 - found
第10 页FreeBSD 使用手册
===> Patching for xchat-1.3.8
===> Applying FreeBSD patches for xchat-1.3.8
===> Configuring for xchat-1.3.8
...
[configure output snipped]
...
===> Building for xchat-1.3.8
...
[compilation snipped]
...
===> Installing for xchat-1.3.8
===> xchat-1.3.8 depends on shared library: gtk12.2 - found
===> xchat-1.3.8 depends on shared library: Imlib.5 - found
===> xchat-1.3.8 depends on shared library: X11.6 - found
...
[install routines snipped]
...
===> Generating temporary packing list
===> Installing xchat docs in /usr/X11R6/share/doc/xchat
===> Registering installation for xchat-1.3.8
#
正如你所看到的,唯一的不同是那些告诉你系统是从哪儿找到port 行的 。在下一节中,
你将学到如何从你的系统中删除一个port 。
4.4.3. 删除已经安装的port
现在你已经知道如何安装ports 了,你大概想知道如何删除它们吧 。例如,已经安装好
了一个port,不久发现安装的是一个错误的port 。下面的段落将谈到这些问题 。
现在我们将删除我们刚才安装的xchat 。正如安装ports 时一样,第一件事情是你必须
改变port 的目录 。如果你记得的话,那应该是/usr/ports/irc/xchat 。你改变了目录后,
你就要准备删除xchat 了 。你可以执行下面的反安装程序:
# cd /usr/ports/irc/xchat
第11 页FreeBSD 使用手册
# make deinstall
===> Deinstalling for xchat-1.3.8
#
就这么简单 。你现在已经把xchat 从你的系统中删除掉了 。如果你想再重新安装它的话,
你可以在/usr/ports/irc/xchat目录下执行make reinstall 命令 。
4.5.安装中出现的问题
4.5.1. 一些问题与解答
4.5.1.1.我认为应该作一个有关modem 的讨论?
哦,你必须想到你电脑的串口 。我们使用串口从一个Unix 系统到另一个系统传送程序 。
4.5.1.2.应该用package 来安装额外的程序?
是的,通常这是最快速、最简单的方法 。
4.5.1.3.为什么用port 来烦人呢?
几个原因:
1,一些软件的发布许可可能不允许采用二进制的方式分发 。它们必须采用源代码的方
式分发 。
2,一些人不信任二进制分发 。至少带上源代码,你可以自己阅读,寻找可能存在的问
题 。
3,如果你有本地的补丁,那你可能在打补丁的时候需要源代码 。
4,你可能在程序的编译方式上与做这些程序的人有不同的看法 。无论是建构调试版,
还是把它们分开,一些人喜欢采用最优化的设置来编译以达到最强大 。通常发布的
软件包在设置方面都是比较保守的 。如果port 对一个特殊的处理器在使用代码上有
一个编译选项,或是需要支持一个额外的设备,你可能需要亲自对这个port 进行编
译,不需要为提供每一个额外的支持而生成许多不同的软件包 。有很多这样的例子 。
如果一个软件包可能对一些特殊尺寸的纸张提供了默认的支持,那我们就要提供多
种软件包,每一种对应一种尺寸的纸张 。
5,一些人喜欢围着代码转 。如果它们觉得无聊,或想攻克它,或想从中学点东西,诸
如此类的,它们可能会去读它 。
6, 如果你不能得到源代码,那它就不是软件了 。
4.5.1.4. 什么是补丁?
一个补丁(patch)是一个小文件,主要描述文件如何从一个版本升级到另一个版本 。

推荐阅读