r语言 - Sys.which( "make" ) 空,尽管 Rtools 在 PATH 中



我已经完全卸载了R, RStudio和RTools,并删除了所有文件夹(如下所述);然后重新安装了R (4.0.4), RTools (4.0 x86)和RStudio(1.4.1106)。我已经将RTools文件夹添加到路径(Sys.getenv("PATH") # [1] "$C:\rtools40\usr\bin;...."),但问题仍然存在- 'make'为空,尽管C:rtools40usrbinmake.exe存在:

> Sys.which("make")
make 
"" 

有人能帮帮我吗?(这个问题没有帮助,因为我的PATH变量已经包含了RTools文件夹。)

提前感谢!:)

留给子孙后代:问题在于不属于路径

感谢@r2evans的解决方案-Sys.setenv(PATH=gsub("^\$", "", Sys.getenv("PATH")))成功了。

对于我来说,这里提出的解决方案适用于单个会话,然后我必须像@r2evans建议的那样在环境变量设置中永久添加路径。

这是单个会话的解决方案:

path <- Sys.getenv("PATH")
path <- c("C:\RBuildTools\3.3\bin", "C:\RBuildTools\3.3\gcc-4.6.3\bin", path) 
#Remember to substitute the two paths with your actual paths.
path <- paste(path,collapse=";")
#Then run
Sys.setenv(PATH=path)
Sys.which("make")

在临时和永久解决方案中,我都必须在PATH的开头包含路径,否则它们不会被识别,但我不知道为什么。

最新更新