首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何确保Rstudio能够找到Rtools?

如何确保Rstudio能够找到Rtools?
EN

Stack Overflow用户
提问于 2022-09-02 13:24:07
回答 1查看 142关注 0票数 0

我的R版本为4.2.1,Rstudio版本为2022.07.1,构建了554个Rtools 4.2

/c/Program /R/R-4.2.1/bin/x64:/c/rtools42 42/usr/bin在系统和用户的路径中添加。

在Rstudio中,pkgbuild::find_rtools() 1为TRUE

代码语言:javascript
运行
复制
Sys.which("make")
                              make 
"C:\\rtools42\\usr\\bin\\make.exe" 
> Sys.getenv("PATH")
[1] "C:\\rtools42/x86_64-w64-mingw32.static.posix/bin;C:\\rtools42/usr/bin;C:\\rtools42/usr/bin;C:\\Program Files\\R\\R-4.2.1\\bin\\x64;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\Program Files (x86)\\Interactive Intelligence\\ININ Trace Initialization\\;C:\\Program Files (x86)\\Interactive Intelligence\\ICUserApps\\;C:\\Program Files\\Interactive Intelligence\\ICUserApps\\;C:\\Program Files (x86)\\Microsoft SQL Server\\150\\DTS\\Binn\\;C:\\Program Files\\Azure Data Studio\\bin;C:\\Program Files\\PuTTY\\;C:\\Program Files\\Docker\\Docker\\resources\\bin;C:\\ProgramData\\DockerDesktop\\version-bin;C:\\Program Files\\Git\\cmd;C:\\Program Files\\R\\R-4.2.1\\bin\\x64;C:\\rtools42\\usr\\bin;C:\\Users\\fzhu\\Miniconda3;C:\\Users\\fzhu\\Miniconda3\\Library\\mingw-w64\\bin;C:\\Users\\fzhu\\Miniconda3\\Library\\usr\\bin;C:\\Users\\fzhu\\Miniconda3\\Library\\bin;C:\\Users\\fzhu\\Miniconda3\\Scripts;C:\\Users\\fzhu\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\fzhu\\AppData\\Local\\Programs\\Git\\cmd;C:\\Users\\fzhu\\AppData\\Local\\Programs\\Microsoft VS Code\\bin;C:\\Users\\fzhu\\Anaconda3\\condabin;C:\\Program Files\\R\\R-4.2.1\\bin\\x64;C:\\rtools42\\usr\\bin;;C:/Program Files/RStudio/bin/quarto/bin"

基本上,我有确切的问题https://community.rstudio.com/t/rstudio-cannot-find-rtools/60007

当构建任何源包时,我得到了非零出口。

代码语言:javascript
运行
复制
install.packages("jsonlite", type="source")
Installing package into ‘C:/Users/fzhu/AppData/Local/R/win-library/4.2’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/src/contrib/jsonlite_1.8.0.tar.gz'
Content type 'application/x-gzip' length 1051625 bytes (1.0 MB)
downloaded 1.0 MB

& was unexpected at this time.
Warning in install.packages :
  installation of package ‘jsonlite’ had non-zero exit status

无论是使用命令行还是从菜单构建,都会发生这种情况。

另外,由于Rstudio找不到Rtools,如果使用菜单,它将要求您重新下载Rtools42。但在那之后,建设仍然失败。我希望Rtools能够自动向环境中添加工具路径。

谢谢你帮忙!

参考资料:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-03 03:40:11

正如@MrFlick所指出的,在安装包时,& was unexpected at this time.错误不是由rtools引起的。windows上的包安装依赖于命令提示符。但是,无法启动命令提示符。(在搜索窗口中发出cmd后窗口消失。)

@MrFlick,cmd.exe throws error "& was unexpected at this time.",提供了问题诊断和解决方案。

  • 诊断虽然不能直接启动cmd提示,但仍然可以使用vs代码终端运行dos命令。下面是以下命令,

代码语言:javascript
运行
复制
Get-ItemProperty -ea Ignore ('HKCU:', 'HKLM:' -replace '$', '\Software\Microsoft\Command Processor') AutoRun  

AutoRun      : if exist & if exist "C:\Users\fzhu\Miniconda3\condabin\conda_hook.bat"
PSPath       : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Command Processor       
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft
PSChildName  : Command Processor
PSDrive      : HKCU
PSProvider   : Microsoft.PowerShell.Core\Registry

这显示cmd shell具有由miniconda3附加的自动运行命令。

  • 解决方案然后发出命令以删除这些

代码语言:javascript
运行
复制
Get-ItemProperty -ea Ignore ('HKCU:', 'HKLM:' -replace '$', '\Software\Microsoft\Command Processor') AutoRun |  Remove-ItemProperty -Name AutoRun

之后,我的cmd提示符就回来了。

然后,安装错误& was unexpected at this time.立即消失。

最后请注意,我认为这个问题非常少见,但可能有助于在rare库说明中添加"check cmd提示shell函数“。这个错误非常难以捉摸,很难搞清楚。

再次,谢谢MrFlick!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73583295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档