简体   繁体   English

R CMD检查在“检查Rd交叉引用”处停止

[英]R CMD check stops at “checking Rd cross-references”

I am using devtools::check(document=FALSE,args=c('--no-multiarch')) to perform the checks for my package. 我正在使用devtools::check(document=FALSE,args=c('--no-multiarch'))对我的程序包执行检查。

When the above command performs R --vanilla CMD check "C:\\sometmpfolder/mypackage.tar.gz" --timings --no-multiarch , it stops at 当以上命令执行R --vanilla CMD check "C:\\sometmpfolder/mypackage.tar.gz" --timings --no-multiarch ,它停在

* checking Rd cross-references ...

ie, this is the last line in mypackage.Rcheck/00check.log . 即,这是mypackage.Rcheck/00check.log的最后一行。 There is no error message - the check seems to freeze. 没有错误消息-检查似乎冻结。

I use roxygen2 to create my documentation. 我使用roxygen2创建我的文档。 The cross references that I use are of the form \\link{somefunction} and \\link[somepkg]{somefunction} . 我使用的交叉引用的格式为\\link{somefunction}\\link[somepkg]{somefunction}

I am running R 3.1.2 on a Win 7 machine. 我在Win 7机器上运行R 3.1.2。 But I think that I have seen a similar behaviour with earlier versions of R and without roxygen2 as well. 但是我认为使用R的早期版本并且不使用roxygen2 ,我也看到了类似的行为。

Do you guys know why the check stops at the cross-references? 你们知道为什么检查在交叉引用处停止吗?

It turned out that an incorrect statement of the form 原来是形式不正确的陈述

\link[somepkg]{somefunction}

was the problem. 是问题所在。 In my case I used the incorrect command \\link[reshape]{melt} although it should be \\link[reshape2]{melt} . 就我而言,我使用了不正确的命令\\link[reshape]{melt}尽管它应该是\\link[reshape2]{melt} This caused the Rd cross-reference check to take forever (actually, it finished after nearly one hour). 这导致Rd交叉引用检查永久生效(实际上,它在将近一个小时后完成)。 After correcting to \\link[reshape2]{melt} the Rd cross-reference check only took a minute or so. 在更正\\link[reshape2]{melt}Rd交叉引用检查仅花费了\\link[reshape2]{melt}一分钟的时间。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM