【发布时间】:2015-09-07 16:32:59
【问题描述】:
我正在准备一个包以提交给CRAN。
我使用R CMD build myPackage,然后使用R CMD check myPackage --as-cran,它通过了所有检查,没有任何注释或警告。
但是,每次我尝试提交时,我都会收到来自 CRAN 维护者之一的以下错误消息:
包有一个 VignetteBuilder 字段,但没有预建的小插图索引。
首先,我希望能够在我自己的系统上重现上述错误消息 (R version 3.0.1)。
小插图.Rnw 文件如下所示:
%\VignetteEngine{knitr::knitr}
%\VignetteIndexEntry{myVignetteName}
\documentclass{article}
\begin{document}
Here is some code:
<<>>=
plot(1:10, 10:100)
@
\end{document}
我尝试在根目录中添加一个INDEX 文件,其中包含如下的小插图条目:
myFunction a brief description
abc-vignette vignette description
同样,这通过了R CMD check myPackage --as-cran,但我收到了相同的错误消息。
我也尝试过R CMD build myPackage --md5 强制创建MD5 文件,但无济于事。
当我查看 myPackage.Rcheck/00_pkg_src/myPackage/inst/doc 时,我发现了小插图文件,.Rnw 和 .pdf 符合预期。
包DESCRIPTION文件有以下条目:
VignetteBuilder: knitr
Suggests: knitr
当我查看myPackage.Rcheck/myPackage/Meta 时,我看到一个条目vignette.rds。但是这似乎是一个二进制文件,所以我无法理解它。
这是来自“编写 R 扩展”:
在安装时会自动为包中的所有小插曲创建 HTML 索引 来自 \VignetteIndexEntry 语句,除非在目录“inst/doc”中存在文件“index.html”。该索引链接自该包的 HTML 帮助索引。如果您确实提供了“inst/doc/index.html”文件,它应该只包含指向已安装“doc”目录下文件的相对链接,或者可能(不是真正的索引)指向 HTML 帮助文件或“DESCRIPTION”文件的相对链接.
那么我需要手动创建index.html 吗?谁能指出这应该是什么样子的示例?
This question 似乎密切相关,但我(故意)没有.Rbuildignore 文件。 This is also related,虽然我没有使用 devtools 来创建包。我也看过this question,但没有看到一个简单的答案。
7 月 1 日更新
对于一个可重现的示例,该包可用here on github。下载和安装(例如使用devtools::install_github() 应该允许重现此错误。
【问题讨论】:
标签: r package knitr vignette rnw