[英]No RTools compatible with R version 3.5.0 was found
我在安裝R版本3.5.0的data.table時遇到問題,並建議檢查是否正確安裝了RTools。
安裝了RTools 3.5(這似乎是最新的)我輸入了
find_rtools(T)
我收到以下消息:
WARNING: Rtools is required to build R packages, but no version
of Rtools compatible with R 3.5.0 was found.
(Only the following incompatible version(s) of Rtools were found:3.4,3.5)
Please download and install the appropriate version of Rtools from
http://cran.r-project.org/bin/windows/Rtools/.
所以一方面它看起來我安裝了3.5,但它似乎認為有一個更新/不同的版本。
有什么想法嗎?
問題是Rtools 3.5
不在您的Windows系統PATH
因此find_rtools
無法找到它。 另一種可能性是, PATH
中存在不兼容的Rtools
版本
安裝Rtools
最佳實踐:
在默認的推薦位置安裝RTools
(在C
盤的根目錄下): C:/Rtools/
< 重要 >選中允許Rtools
修改系統路徑的框
安裝完成后,我們可以通過在R
里面運行這個命令來仔細檢查
R> Sys.getenv('PATH')
[1] "C:\\Program Files\\R\\R-3.5.0\\bin\\x64;c:\\Rtools\\bin;c:\\Rtools\\mingw_64\\bin;
另見本指南
編輯 :對於沒有管理權限的人,請參閱以下鏈接:
UPDATE
實用程序find_rtools
已移至包pkgbuild
(如devtools
News中所述 )。 函數pkgbuild::find_rtools()
在我的系統中正確發現了Rtools
3.5。
老答案
我有同樣的問題,因為devtools
尚未更新以考慮最新版本的RTools(3.5)。 這是一個簡單的修復,它應該在更新包時起作用:
# add missing RTools 3.5 info
v_i = devtools:::version_info
v_i[["3.5"]] = v_i[["3.4"]]
v_i[["3.5"]]$version_max = "3.5.99"
assignInNamespace(x = "version_info",
value = v_i,
ns = "devtools")
# now find_rtools should work properly
devtools::find_rtools()
當然,這種方法假設devtools::find_rtools
在更新R和RTools之前為您工作。 如果不是這種情況,那么您可能會遇到其他人提到的錯誤安裝和/或PATH變量。
我很確定RTools 3.5適用於R-3.5。 我之前沒有使用過find_rtools(),但我確實設法在一周前從源代碼編譯data.table。 我是這樣做的:
安裝R 3.5和RTools 3.5之后,我手動檢查/修改了以下system-envs(不知何故,RTools安裝程序無法自動執行此操作,因此我從RTools讀取了自述文件並手動完成):BINREF =“C:/ Rtools / mingw _ $(WIN)/ bin /“(帶”s,斜杠是/)PATH =“; C:\\ Rtools \\ bin”(“s是可選的,斜杠是\\)
然后我下載了data.table的源包(版本為1.10.4-3),並從windows命令行運行了R CMD INSTALL data.table_1.10.4-3.tar.gz。 使用工作的RTools,包將成功編譯。 我還嘗試了來自R-GUI的install.packages(data.table),我在彈出窗口中確認從源代碼編譯。
無論如何,我相信cran現在為data.table提供了一個工作的windows-binary,因此不再需要使用RTools。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.