我正在尝试开发一个R包,其中包含一些以前编译的可执行程序及其支持库。 (我知道这是不好的形式,但它是供内部使用的。)
我的问题:特殊的exec
和tools
目录在R中是否有任何特殊功能?
文档似乎很少。这是我到目前为止所发现的:
来自here
exec
中包含的文件在安装时标记为可执行文件exec
中的子目录将被忽略exec
(我对CRAN的调查显示tools
很少使用)tools
出于配置目的? 这些目录是否提供了从创建inst/programs
目录无法获得的任何目录?
答案 0 :(得分:4)
据我所知,这是exec
和tools
目录提供的功能。
exec
我发现的子目录exec可能包含程序包所需的其他可执行脚本,通常是shell,Perl或Tcl等解释程序的脚本。目前,这种机制仅由极少数的软件包使用。注意:只安装exec下的文件(而不是目录)(名称以点开头的文件将被忽略),并且它们都在POSIX平台上标记为可执行文件(模式755,由'umask'审核)。另请注意,这不适用于可执行程序,因为某些平台(包括Windows)支持使用相同安装包目录的多个体系结构。
exec
功能
exec
root tools
来自R-exts:
我发现的子目录工具是配置期间所需辅助文件的首选位置,也需要重新创建脚本的源(例如,用于autoconf的M4文件)。
tools
功能
tools
用于保存在程序包编译时使用的文件tools
未包含在程序包的最终编译形式中。所有内容都被删除答案 1 :(得分:2)
[R-exts]有这样的说法:
子目录exec可能包含其他可执行脚本 包需求,通常是解释器的脚本,如shell, Perl,或Tcl。这种机制目前只有极少数人使用 包。注意:只有exec下的文件(而不是目录) 安装(以及以点开头的名称将被忽略),和 它们都被标记为可执行文件(模式755,由'umask'审核) POSIX平台。另请注意,这不适用于可执行文件 程序,因为一些平台(包括Windows)支持多个 使用相同安装包目录的体系结构。
如果仅供内部使用,最后一个音符很可能不适用于您。
尽管如此,我建议避免滥用任何可能不适用于您的情况的现有惯例,而是使用inst/tools
或inst/bin
。