R CMD安装错误:test_load_package()函数中出现意外符号 问题:

R CMD安装错误:test_load_package()函数中出现意外符号 问题:,r,R,我只是试图从源代码构建一些包,但遇到了一个错误 错误:“工具::.test_load_包('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 l

我只是试图从源代码构建一些包,但遇到了一个错误

错误:“工具::.test_load_包('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
    的撇号(
  • 如果是,它是否是一个bug,因为它没有在目录中转义撇号
  • 它是否正在尝试安装到我的默认库中
  • 如果是,我可以将库更改为
    R CMD INSTALL
    中的参数吗
  • 如果我不能指定库,我应该完全删除该库吗
额外信息: 下面是
.libPaths()的输出


在我看来,错误来自撇号-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

在我看来,错误来自撇号-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

问题是我没有真正编写函数……它是作为
R CMD INSTALL--build的一部分运行的,所以我可能需要更改默认库(但不知道如何更改)啊,对不起,我当时误解了这个问题。我编辑了我的答案,并在那里添加了如何在
R CMD INSTALL
中指定安装路径。谢谢Daniel。这就成功了…我将它更改为另一个R库(在C:\Program Files\…)但它不喜欢url路径中的空格。因此我尝试了C:\test\并且效果很好。因此,显然它不必是现有的库,只要是任何旧文件夹(只要文件夹名称中没有撇号或空格!),我不确定,但是如果路径中有空格,引用它可能会有帮助,比如
-l“C:/Program Files/RStudio/R/libraries”
(事实上我有点奇怪,我想我是从你的帖子中复制了路径,包括引文)。但很高兴听到它成功了。我在CMD提示符中引用了它。有些地方仍然不喜欢它。问题是我没有真正编写函数…它是作为
R CMD INSTALL--build
的一部分运行的,所以我可能需要更改默认库(但不知道如何更改)啊,对不起,我当时误解了这个问题。我编辑了我的答案,并在那里添加了如何在
R CMD INSTALL
中指定安装路径。谢谢Daniel。这就成功了…我将它更改为另一个R库(在C:\Program Files\…)但它不喜欢url路径中的空格。因此我尝试了C:\test\并且效果很好。因此,显然它不必是现有的库,只要是任何旧文件夹(只要该文件夹的名称中没有撇号或空格!),我不确定,但如果路径中有空格,则可以引用它,如
-l“C:/Program Files/RStudio/R/libraries“
(事实上我有点奇怪,我想我是从你的帖子中复制了路径,包括引用)。但很高兴听到它成功了。我在CMD提示符中引用了它。有些东西仍然不喜欢它