我编写了一个托管在我的 GitHub 上的 R 包。我包含了一个小插图,我可以通过执行以下操作来安装该包并加载该小插图,而不会出现 R 和 RStudio 中的任何问题:
devtools::install_github("rosalieb/serac", build_vignettes = TRUE)
library(serac)
vignette("serac")
但是,我有一些同事无法安装 vignette(他们下载软件包的唯一方法是执行 devtools::install_github("rosalieb/serac")
(build_vignettes 的默认值是错误的)。
如果他们使用 RStudio,但在“常规”R 中则不行。
我鼓励人们使用 RStudio,但我不能强制他们,最终,我不明白为什么它在“常规”R 中对我有效,但对他们无效。
他们尝试安装 pandoc、knitr、Rtools - 这些都不起作用。
这是我的同事尝试安装带有小插图的软件包时出现的错误消息:
v checking for file 'C:\Temp\RtmpO8YwVb\remotesf9842f1431\rosalieb-serac-46a3587/DESCRIPTION'
- preparing 'serac':
checking DESCRIPTION meta-information ...
checking DESCRIPTION meta-information ...
v checking DESCRIPTION meta-information
- installing the package to build vignettes
creating vignettes ...
creating vignettes ...
E creating vignettes (4.9s)
--- re-building 'serac.Rmd' using rmarkdown
Error: processing vignette 'serac.Rmd' failed with diagnostics:
Pandoc is required to build R Markdown vignettes but not available. Please make sure it is installed.
--- failed re-building 'serac.Rmd'
RESUME : le traitement du fichier suivant a échoué :
'serac.Rmd'
Erreur : Vignette re-building failed.
Exécution arrêtée
Erreur : Failed to install 'serac' from GitHub:
System command 'Rcmd.exe' failed, exit status: 1, stdout & stderr were printed
预先感谢您的帮助!
最佳答案
该消息表明 rmarkdown::render
找不到 Pandoc。
它在三个位置查找它:在 RSTUDIO_PANDOC
环境变量指定的目录中、在 PATH
上的目录中、在目录 opt/pandoc 中
在用户的主目录中。因此,安装了它的同事应该确保它在这些位置之一可用。他们可以通过运行查看环境变量的当前值
Sys.getenv("PATH")
和
Sys.getenv("RSTUDIO_PANDOC")
可以使用进行临时更改
Sys.setenv(RSTUDIO_PANDOC="/path/to/pandoc/directory")
这需要在尝试安装包并构建小插图的 session 中发生,而不是在小插图本身中。
如何对这些值进行永久更改取决于它们所运行的系统的详细信息。
关于r - 无法从 GitHub 上的 R 包安装 vignette,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74686915/