【发布时间】:2013-11-22 00:24:11
【问题描述】:
更新:
我已经为installing Rtools on windows 写了一个简短的演练指南。
原文:
我正在尝试在 Windows 7 上使用 RStudio 构建 R 包。当我尝试通过 RStudio 的构建面板构建包时,我收到:
WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding:
http://cran.rstudio.com/bin/windows/Rtools/
加载 library(devtools) 并运行 find_rtools(T) 给出:
Scanning path...
ls : F:\Rtools\bin\ls.exe
Scanning registry...
Found F:/Rtools for 3.1
VERSION.txt
Rtools version 3.1.0.1936
[1] TRUE
Path变量设置为:
F:\Rtools\bin;F:\Rtools\gcc-4.6.3\bin;F:\Rtools\perl\bin;F:\Rtools\MinGW\bin;F:\Program Files\R\R-3.0.2\bin\x64;F:\Program Files (x86)\HTML Help Workshop;F:\Program Files\MiKTeX 2.9\miktex\bin\x64\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files\Microsoft Network Monitor 3\;F:\Program Files (x86)\QuickTime\QTSystem\
我也重新启动了几次,但错误仍然存在。我有点困惑为什么会发生这种情况。
R访问系统变量Path时的输出:
> Sys.getenv()['PATH']
PATH
"F:\\Program Files\\R\\R-3.0.2\\bin\\x64;F:\\Rtools\\bin;F:\\Rtools\\gcc-4.6.3\\bin;F:\\Rtools\\perl\\bin;F:\\Rtools\\MinGW\\bin;F:\\Program Files\\R\\R-3.0.2\\bin\\x64;F:\\Program Files (x86)\\HTML Help Workshop;F:\\Program Files\\MiKTeX 2.9\\miktex\\bin\\x64\\;C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Program Files\\Common Files\\Microsoft Shared\\Windows Live;C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\Windows Live;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Windows Live\\Shared;C:\\Program Files\\Microsoft Network Monitor 3\\;F:\\Program Files (x86)\\QuickTime\\QTSystem\\"
我正在使用的R版本是:R版本3.0.2(2013-09-25)--“飞盘航行”。
我使用的 Rstudio 版本是:0.97.551。当我检查更新时,我被告知这是最新的补丁。
> Sys.which("ls.exe")
ls.exe
"F:\\Rtools\\bin\\ls.exe"
> Sys.which("gcc.exe")
gcc.exe
""
【问题讨论】:
-
检查
Sys.getenv()['PATH']看看这是否也是 R 中的路径。 -
我只在 \\ 与 PATH 环境中的单个 \ 中获得相同的路径。路径输出包含与上述相同的内容。我会发布它,但评论限制了我的字符数。
-
听起来 devtools 可以找到它,但 RStudio 没有,因此您可以改用 devtools 函数(例如
build)。您没有说明您使用的是哪个版本的 Rstudio - 请确保您拥有最新版本,如果仍然无法正常工作,请在 support.rstudio.org 报告错误 -
您看到
Sys.which("ls.exe")和Sys.which("gcc.exe")的输出是什么? RStudio 期望这两个都在路径上,并且在 Rtools 目录中。 -
> Sys.which("ls.exe") ls.exe "F:\\Rtools\\bin\\ls.exe" > Sys.which("gcc.exe") gcc。 exe "" 那么,gcc 好像没有被找到?