37.4创建软件包

在内部,包只是一个包含任何给定名称的顶级目录的gzip tar文件。此目录在以下情况下称为软件包并且可能包含以下文件:

软件包/CITATION

这是一个可选文件,描述了如何引用包进行发布的说明。它将按函数按字显示引用.

软件包/复印

这是包含软件包许可证的必需文件。一般情况下,对许可证进行限制。但是,如果包包含动态链接的函数,则许可证必须与GNU通用公共许可证兼容。

软件包/说明

这是一个必需的文件,包含有关包的信息。详见DESCRIPTION文件,了解有关此文件的详细信息。

包/ChangeLog

这是一个可选文件,描述对包源文件所做的所有更改。

包/索引

这是一个可选文件,描述包提供的函数。如果没有给出该文件,则将从包中的函数和类别中的关键字说明文件详见INDEX文件,了解有关此文件的详细信息。

软件包/新闻

这是一个可选文件,描述了所有值得一提的用户可见的更改。随着此文件的大小增加,旧条目可以移动到包/ONEWS.

包/ONEWS

这是一个可选文件,用于描述新闻文件

软件包/PKG_ADD

一个可选文件,其中包括将包添加到用户路径时运行的命令。请注意PKG_ADDOctave包管理器也会将包源代码中的指令添加到此文件中。请注意,包中应避免使用符号链接,因为某些文件系统中不存在符号链接,soa通常使用此文件来替换符号链接

ln-s foo.oct bar.oct

带有自动加载指令,如

自动加载('bar',which('fo'));

详见PKG_ADD和PKG_DEL指令,有关的详细信息PKG_ADD指令。

软件包/PKG_DEL

一个可选文件,其中包括从用户路径中删除包时运行的命令。请注意PKG_DEL程序包源代码中的指令也将从Octave程序包管理器添加到此文件中。详见PKG_ADD和PKG_DEL指令,有关的详细信息PKG_DEL指令。

package/pre_install.m

这是一个可选函数,在安装apache之前运行。此函数是用一个参数调用的,该参数是一个结构体,在说明,以及安装程序包函数的路径。

package/post_install.m

这是一个可选函数,在安装apache之后运行。此函数是用一个参数调用的,该参数是一个结构体,在说明,以及安装包函数的路径。

软件包/on_uninstall.m

这是一个可选函数,在删除电容之前运行。此函数是用一个参数调用的,该参数是一个结构体,在说明,安装包函数的路径,以及当前是否加载了包。

除了上述文件外,包还可以包含以下一个或多个目录:

包/inst

一个可选目录,包含从包直接安装的任何文件。通常,这将包括任何m-文件。

包/src

一个可选目录,其中包含必须在安装包之前生成的代码。Octave包管理器将执行./configure在该目录中(如果该脚本存在),然后将调用制作如果文件Makefile存在于该目录中。进行安装但是不会被调用。环境变量mkoct文件, Octave配置Octave将设置为程序的完整路径mkoct文件, Octave配置八度分别为正确版本,当配置制作被调用。如果一个文件调用文件夹存在,其中列出的所有文件都将复制到inst目录,因此它们也将被安装。如果文件夹文件不存在,src/*.msrc/*.oct将被复制到inst目录

包/doc

包含程序包文档的可选目录。此目录中的文件将直接安装在已安装软件包的子目录中,以供将来参考。

软件包/箱子

一个可选目录,其中包含将添加到Octave的文件EXEC_PATH当加载包时。这可能包含从包中的函数调用的外部脚本等。


版权所有 © 2024 Octave中文网

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