[英]R Unable to Install Packages From GitHub (System Error 267 @win/processx.c:1040)
無法從 GitHub 安裝任何軟件包,系統錯誤 267
我新安裝了 R (v4.1)、Rstudio 並且剛剛安裝了 devtools。 我還額外安裝了Rtools40並將其添加到我的路徑(全局環境)
Rtools 似乎可以正常工作,經驗證: Sys.which("make")
& maketools::rtools_find()
(輸出如下)
我無法從 GitHub 安裝任何軟件包,例如rstudio/gt 。 任何 GitHub 包的錯誤幾乎相同,總是說明system error 267
devtools::install_github("rstudio/gt")
Downloading GitHub repo rstudio/gt@HEAD
Error: Failed to install 'gt' from GitHub:
create process 'C:/PROGRA~1/R/R-41~1.0/bin/x64/Rcmd.exe' (system error 267, Der Verzeichnisname ist ungültig.
) @win/processx.c:1040 (processx_exec
按照建議,我將 R 4.1.0 重新安裝到最簡單的文件夾C:/R/
盡管現在缺少波浪號,但錯誤仍然相同~
devtools::install_github("rstudio/gt")
Downloading GitHub repo rstudio/gt@HEAD
Error: Failed to install 'gt' from GitHub:
create process 'C:/R/bin/x64/Rcmd.exe' (system error 267, Der Verzeichnisname ist ungültig.
) @win/processx.c:1040 (processx_exec)
將 .libPaths 更改為沒有任何特殊字符的文件夾
.libPaths( c( "D:/tmp" , .libPaths() ) )
.libPaths()
[1] "D:/tmp" "C:/Users/Björn/Documents/R/win-library/4.1"
[3] "C:/R/library"
Error is still the same
我更新了一些包,並檢查了packageVersion('processx')
= 3.5.2 的版本
install.packages("testthat")
install.packages("pkgload")
install.packages("devtools")
install.packages("remote")
Sys.getenv 的內容
Sys.getenv('Path')
[1] "C:\\rtools40\\usr\\bin;C:\\R\\bin\\x64;C:\\rtools40\\usr\\bin;C:\\rtools40\\mingw64\\bin;
> sessionInfo()
R version 4.1.0 (2021-05-18)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 19042)
Matrix products: default
locale:
[1] LC_COLLATE=German_Germany.1252 LC_CTYPE=German_Germany.1252 LC_MONETARY=German_Germany.1252
[4] LC_NUMERIC=C LC_TIME=German_Germany.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
Sys.which("make")
make
"C:\\rtools40\\usr\\bin\\make.exe"
maketools::rtools_find()
$version
[1] ‘4.0’
$compiler
[1] "gcc 8.3.0"
$api
[1] ‘8’
$PATH
[1] "C:\\rtools40\\usr\\bin"
$BINPREF
[1] "C:/rtools40/mingw$(WIN)/bin/"
$available
[1] TRUE
$compatible
[1] TRUE
該遙控器包的單機模式解決了這個問題對我來說,通過維護者的建議processx (的GaborCsárdi)在這里
devtools::install_github()
只調用remotes::install_github()
。
但是,對於遙控器,可以選擇在獨立模式下執行
資料來源: 克蘭
單機模式
如果安裝了 curl、git2r 和 pkgbuild 包,遠程將使用它們來為安裝過程的某些方面提供更快的實現。 但是,如果您使用遙控器安裝或更新這些軟件包(或其反向依賴項),則在安裝期間使用它們可能會失敗(尤其是在 Windows 上)。
如果您設置環境變量 R_REMOTES_STANDALONE="true"(例如在 R Sys.setenv(R_REMOTES_STANDALONE="true") 中),您可以強制遙控器在獨立模式下運行並僅使用其內部 R 實現。 這將允許成功安裝這些軟件包
通過以下幾行代碼,終於從github成功安裝了gt。
Sys.setenv(R_REMOTES_STANDALONE="true")
remotes::install_github("rstudio/gt")
感謝所有評論員的幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.