1

问题:

我只是想从源代码构建一些包并遇到错误

错误:“tools:::.test_load_package('rbenchmark', '\per-homedrive1.corp.something.org/homedrive$/Tommy.O'Dell”中出现意外符号

下面的完整输出:

C:\ROracle>R CMD INSTALL --build --merge-multiarch rbenchmark_1.0.0.tar.gz

install for i386

* installing to library '\\per-homedrive1.corp.something.org/homedrive$/Tommy.O'Dell/R/win-library/2.15'
* installing *source* package 'rbenchmark' ...
** package 'rbenchmark' successfully unpacked and MD5 sums checked
** R
** demo
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
Error: unexpected symbol in "tools:::.test_load_package('rbenchmark', '\\per-homedrive1.corp.something.org/homedrive$/Tommy.O'Dell"
Execution halted
ERROR: loading failed
* removing '\\per-homedrive1.corp.something.org/homedrive$/Tommy.O'Dell/R/win-library/2.15/rbenchmark'

问题:

  • 错误是否来自路径中的撇号 ( ') ?O'Dell
  • 如果是,这是一个错误,因为它没有转义目录中的撇号吗?
  • 它是否试图安装到我的默认库中?
  • 如果是,我可以将库更改为参数R CMD INSTALL吗?
  • 如果我不能指定库,我应该完全删除该库吗?

额外信息:

这是输出.libPaths()

[1] "\\\\per-homedrive1.corp.something.org/homedrive$/Tommy.O'Dell/R/win-library/2.15"
[2] "C:/Program Files/R/R-2.15.2/library"                                            
[3] "C:/Program Files/RStudio/R/library" 
4

1 回答 1

1

正如我所看到的,错误来自撇号 - R 不知道这不会结束路径,而是它的一部分。在没有它的情况下尝试它,我猜它应该可以工作。一种解决方案也可能是使用这种引用" ",也许这也行得通,因为撇号不再结束它......

编辑:为了foo通过命令行将软件包安装到特定的库文件夹中,您可以使用

R CMD build foo
R CMD INSTALL -l /home/daniel/myPkg/ foo_1.0.tar.gz

这意味着在您的情况下这应该有效:

R CMD INSTALL --build --merge-multiarch -l C:/Program Files/RStudio/R/library rbenchmark_1.0.0.tar.gz

于 2013-02-28T11:15:29.320 回答