37.5.1 DESCRIPTION 文件

DESCRIPTION 文件包含了关于包的各类信息,例如包名称、作者和版本号。该文件的格式非常简单:

以下是一个 DESCRIPTION 文件的简单示例:

Name: The name of my package
Version: 1.0.0
Date: 2007-18-04
Author: The name (and possibly email) of the package author.
Maintainer: The name (and possibly email) of the current
 package maintainer.
Title: The title of the package
Description: A short description of the package.  If this
 description gets too long for one line it can continue
 on the next by adding a space to the beginning of the
 following lines.
License: GPLv3+

包管理器当前识别以下关键字:

Name

包的名称。

Version

包的版本号。包版本通常是用点号分隔的数字,但也可能包含 '+'、'-'、'~' 以及字母数字字符(在 "C" 语言环境下)。例如,"2.1.0+" 可表示包的开发版本。版本比较使用 compare_versions 函数。

Date

最后更新日期。

Author

包的原始作者。

Maintainer

包的维护者。

Title

包的单行描述。

Description

包的一段描述文本。

Categories

描述包的可选关键字(如果没有提供 INDEX 文件,则此项为必填)。

Problems

已知问题的可选列表。

Url

与包相关的可选主页或仓库网址。

Tracker

与包相关的可选 bug 跟踪器网址。强烈建议维护者使用专用的跟踪器来报告与包功能相关的问题,以保持 Octave 在 Savannah.org 上的 bug 跟踪器不至于过于臃肿,使其仅用于核心 Octave 的 bug 报告。

Depends

此包所依赖的其他 Octave 包的列表。这可能包括对特定版本的依赖,格式如下:

Depends: package (>= 1.0.0)

可用的运算符包括 <<===>=>。如果省略 () 中的版本约束部分,则接受该包的任意版本。多个依赖项可以用逗号分隔列表的形式定义。这也可用于定义对某个包的一系列版本范围的依赖:

Depends: package (>= 1.0.0), package (< 1.5.0)

此外,还可以依赖特定版本的 Octave 核心:

Depends: octave (>= 3.8.0)
License

所用许可证的可选简短描述(例如 GPL 版本 3 或更新版本)。此项可选,因为 COPYING 文件是强制要求的。

SystemRequirements

这些是包的外部安装依赖项,包管理器不会对其进行检查。此处仅作为对发行版打包者的提示。它们遵循与 Depends 关键字相同的约定。

BuildRequires

这些是包的外部构建依赖项,包管理器不会对其进行检查。此处仅作为对发行版打包者的提示。它们遵循与 Depends 关键字相同的约定。请注意,通常情况下,rpmdeb 等打包系统会从构建依赖项中自动探测安装依赖项,因此 BuildRequires 依赖通常可以消除对 SystemRequirements 的需求。

开发者可以自由地向 DESCRIPTION 文件添加其他自定义参数。还有一个有助于打包者的细节:SystemRequirementsBuildRequires 关键字可以包含特定于发行版的部分,自动构建过程将使用这些信息。以下是一个格式示例:

BuildRequires: libtermcap-devel [Mandriva] libtermcap2-devel

其中第一个包名将作为默认值,如果在 Mandriva 发行版上构建 RPM,则会使用第二个包名。


版权所有 © 2024-2026 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-4