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

macOS下R从R-universe安装terra开发版报gdal-config缺失错误

问题根因

报错核心是R在源码编译terra的配置阶段,无法在默认搜索路径定位到gdal-config可执行文件。你已安装GDAL 3.5.0但仍报错,是因为arm64架构Mac上通过Homebrew安装的程序默认存放在/opt/homebrew/bin目录,该路径默认不在R编译流程的搜索路径范围内,导致配置脚本找不到对应文件。

前置排查
  • 在终端执行which gdal-config,确认文件实际存放路径:arm64 Mac通过Homebrew安装的默认路径为/opt/homebrew/bin/gdal-config,Intel芯片Mac默认路径为/usr/local/bin/gdal-config
  • 如果终端执行上述命令无输出,说明当前安装的GDAL缺少开发组件,需在终端执行brew install gdal安装完整版本后再继续操作
解决方法

方案1:单次会话临时指定路径

在R中先配置当前会话的环境变量,再执行安装,命令如下(注意把路径替换成你自己排查得到的gdal-config所在目录,不要带文件名本身):

Sys.setenv(PATH = paste0("/opt/homebrew/bin:", Sys.getenv("PATH")))
install.packages('terra', repos='https://rspatial.r-universe.dev')

方案2:永久配置R环境变量

如果需要长期生效,可将路径写入R的环境配置文件:

  1. 在R中执行file.edit("~/.Renviron")打开配置文件
  2. 新增如下行内容,路径替换为你实际查到的gdal-config所在目录:
PATH=/opt/homebrew/bin:${PATH}
  1. 保存文件后完全重启R,再执行正常安装命令即可。

方案3:安装时直接指定gdal-config完整路径

如果上述配置仍不生效,可在安装命令中直接通过编译参数指定gdal-config的完整路径:

install.packages(
  'terra',
  repos = 'https://rspatial.r-universe.dev',
  configure.args = "--with-gdal-config=/opt/homebrew/bin/gdal-config"
)

注意:需保证安装的GDAL架构和R的架构一致,如果你通过Rosetta转译的终端安装了x86版本GDAL,会触发架构不匹配的编译错误,此时需卸载x86版本GDAL,使用原生arm64架构终端重新安装对应版本即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 11:24:22