You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows安装R包REddyProc时make报错:退出码0xC0000142

解决Windows下安装REddyProc-1.3.3时make检测gcc失败的问题

问题场景

在Windows系统中执行devtools::install('c:/Temp/REddyProc-1.3.3')安装REddyProc-1.3.3时,make工具检测gcc步骤失败,核心报错:

0 [main] make 205 dofork: child -1 - forked process 8576 died unexpectedly, retry 0, exit code 0xC0000142, errno 11
make: *** [C:/PROGRA~1/R/R-44~1.2/share/make/winshlib.mk:39: compilers] Error 127

后续触发R命令执行失败,退出码1。

解决方案

1. 验证Rtools安装与环境配置

  • 确保安装对应R版本的Rtools(如R4.4.x需安装Rtools44),安装时务必勾选「Add Rtools to system PATH」选项;若未勾选,手动将Rtools的mingw64/bin和usr/bin目录添加到系统PATH的最前端。
  • 在R中执行Sys.which("gcc"),若返回空值或非Rtools路径,说明环境配置无效,需重新调整PATH。
  • 打开命令提示符(cmd),执行gcc --version,若无法正常输出版本信息,说明gcc组件存在问题。

2. 修复Rtools的gcc组件

  • 错误码0xC0000142表示程序初始化失败,大概率是gcc依赖的运行库缺失或Rtools安装损坏:
    • 卸载现有Rtools,关闭杀毒软件后重新下载官方安装包完成安装,避免组件被拦截。
    • 手动双击Rtools目录下mingw64/bin/gcc.exe,若弹出缺失dll的提示,安装对应版本的Microsoft Visual C++ Redistributable运行库。

3. 手动指定R的编译工具路径

在R中运行以下代码(路径需与你的Rtools实际安装目录一致),强制指定编译工具:

Sys.setenv(PATH = paste("C:/rtools44/mingw64/bin", Sys.getenv("PATH"), sep=";"))
Sys.setenv(BINPREF = "C:/rtools44/mingw64/bin/")

之后重新执行devtools::install('c:/Temp/REddyProc-1.3.3')。

4. 排查系统环境冲突

  • 系统中若存在其他版本的make/gcc(如Git Bash、MinGW等),可能干扰Rtools的调用:
    • 在cmd中执行where make和where gcc,检查输出的第一个路径是否为Rtools目录下的程序。
    • 若存在冲突,调整系统PATH顺序,将Rtools相关目录移至最前端。

5. 备选:尝试预编译二进制包安装

若上述方法无效,优先检查是否可通过预编译二进制包安装:

  • 若CRAN提供对应版本的Windows二进制包,直接执行:
    install.packages("REddyProc", version = "1.3.3")
    
  • 若旧版本无预编译包,可尝试从CRAN归档源安装(仍需编译):
    install.packages("https://cran.r-project.org/src/contrib/Archive/REddyProc/REddyProc_1.3.3.tar.gz", repos = NULL, type = "source")
    

内容的提问来源于stack exchange,提问作者halt9k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 08:47:34