针对不同的 package 或 port 之间的冲突情形,
系统提供了不同的变量来协助开发人员进行表达: CONFLICTS
、
CONFLICTS_INSTALL
和
CONFLICTS_BUILD
。
这些用于描述冲突的变量会自动地设置
IGNORE
, 后者的完整介绍,
可以在 第 12.14 节 “使用 BROKEN
、
FORBIDDEN
或 IGNORE
阻止用户安装 port” 找到。
在删去相互冲突的 port 时, 建议将 CONFLICTS
保留几个月, 以便让那些不经常更新系统的用户能够看到。
如果您的软件包不能与某些软件包同时安装
(例如由于安装同样的文件到相同的位置、 运行时不兼容等等),
则应把其它软件包的名字列在
CONFLICTS_INSTALL
变量中。 此处可以使用 shell
通配符, 如 *
和 ?
。
列出其它软件包的名字时需要遵循它们在
/var/db/pkg
中出现的样子。 请确保
CONFLICTS_INSTALL
不会匹配到您正制作的这个预编译包的名字,
否则, 使用
FORCE_PKG_REGISTER
来强制安装就没有办法进行了。
对于 CONFLICTS_INSTALL 的检查是在联编过程之后、
安装开始之前进行的。
如果您的软件包在系统中存在某些其它软件包时不能完成联编,
则应把其它软件包的名字列在
CONFLICTS_BUILD
变量中。 此处可以使用 shell
通配符, 如 *
和 ?
。
列出其它软件包的名字时需要遵循它们在
/var/db/pkg
中出现的样子。
对于 CONFLICTS_BUILD 的检查是在联编过程开始之前进行的。
联编时的冲突不会在编译好的包中予以记录。
本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
如果对于FreeBSD有问题,请先阅读
文档,如不能解决再联系
<questions@FreeBSD.org>.
关于本文档的问题请发信联系
<doc@FreeBSD.org>.