Ubuntu16.04安装R包rgdal_1.2-16时提示gdal-config未找到/不可执行
解决rgdal安装时
configure: gdal-config not found or not executable错误 这个错误我之前帮同事排查过好几次,本质是R找不到GDAL的配置工具gdal-config——这是编译rgdal包必须的核心依赖组件。给你整理几个最靠谱的排查和解决方向,一步步来:
1. 先确认系统装了GDAL开发库
rgdal是GDAL的R语言绑定包,光装GDAL运行库没用,必须装包含头文件和配置工具的开发版本:
- Ubuntu/Debian系系统,终端里跑:
sudo apt-get install libgdal-dev libproj-dev - CentOS/RHEL系系统,用这个命令:
sudo yum install gdal-devel proj-devel - macOS用户如果用Homebrew,执行:
brew install gdal
装完一定要重启R会话,再试安装rgdal。
2. 手动给R指定gdal-config的路径
如果已经装了GDAL,但R还是找不到工具,先在终端里验证gdal-config是否存在:
which gdal-config
要是能输出类似/usr/bin/gdal-config的路径,就在R里用指定参数安装:
install.packages("rgdal_1.2-16.tar.gz", configure.args = "--with-gdal-config=/usr/bin/gdal-config")
如果终端里which gdal-config啥都没输出,说明GDAL没装对,回到第一步重新装。
3. 检查GDAL和rgdal的版本兼容性
rgdal_1.2-16是2018年的老版本了,它对GDAL的版本有要求(大概兼容GDAL 1.11.x到2.4.x)。要是你系统装的是太新的GDAL,大概率会不兼容:
- 要么找个和rgdal_1.2-16匹配的旧版GDAL装上;
- 要是项目允许,不如直接升级rgdal到新版本——新版对高版本GDAL支持好太多。
4. 修复gdal-config的可执行权限
极少数情况,GDAL装完后gdal-config没开可执行权限,导致R调用不了。先检查权限:
ls -l $(which gdal-config)
要是输出里没有x权限标记,就用这条命令加权限:
sudo chmod +x /path/to/gdal-config
记得把/path/to/gdal-config换成你实际查到的路径。
内容的提问来源于stack exchange,提问作者Monty _s Flying Circus
相关产品推荐
相关产品推荐

