【发布时间】:2018-02-20 13:10:21
【问题描述】:
我的问题
我安装了Rtools 并将路径添加到我的PATH 变量中:
mPath <- strsplit(Sys.getenv("PATH"), ";")[[1]]
mPath[grep("Rtools", mPath)]
# [1] "C:\\Temp\\Rtools\\bin" "C:\\Temp\\Rtools\\gcc-4.6.3\\bin"
# [3] "C:\\Temp\\Rtools\\gcc-4.6.3\\bin32" "C:\\Temp\\Rtools\\mingw_32\\bin"
(所以你可以看到它没有直接安装在c:\Rtools)
当我尝试运行一个简单的Rcpp sn-p 时,我收到以下错误:
library(Rcpp)
evalCpp("1+1")
[...]
c:/Rtools/mingw_32/bin/g++: 未找到
所以基本上Rcpp 正在寻找C:/Rtools 忽略我的PATH 变量。
解决方法
如果我跑
library(installr)
install.Rtools()
加载所需的命名空间:devtools
无需安装 Rtools - 你已经安装了相关版本的 Rtools
然后再次运行evalRcpp("1+1"),一切正常。
我的问题
为什么它不能立即工作?我如何告诉Rcpp 在正确的文件夹中查找? install.Rtools 如何说服 Rcpp 查看正确的文件夹?如果没有解决方法,我该如何实现?
【问题讨论】:
-
我们与
install.Rtools()无关;与其作者交谈。我们建议遵循R Installation and Administration 中的说明,尤其是相关附录和信函。还要注意 IIRC 在几个 R 版本之前有一个回归。您现在可能必须安装到C:/Rtools。 -
这正是@DirkEddelbuettel 的问题。您真的无法通过修改本地
Makevars文件来自定义路径。 -
你以前在路径中。
-
PATH变量是必需的。但是,也有一个硬编码的二进制文件路径。说来话长。周末提醒我,我会为 Rtools 帖子写一个附录。 -
我也有同样的问题。 Rcpp 正在查看
C:/Rtools/3.4,即使我使用的是 RTools35 并且它安装在C:/Rtools/中,而PATH根据需要安装。