Ubuntu 18.04下R 3.5无法识别GDAL致rgdal安装失败求助
解决R 3.5在Ubuntu 18.04中安装rgdal时无法识别GDAL的问题
我之前也碰到过类似的GDAL版本冲突导致R包安装失败的情况,结合你的环境信息,咱们一步步来解决:
1. 先理清系统里的GDAL版本冲突
你的系统里同时存在GDAL 2.2和2.4的组件(gdal-data是2.4,其他核心组件是2.2),这种版本不一致很容易导致依赖混乱,首先要把所有GDAL组件统一到同一个版本:
如果你想保留GDAL 2.2(和QGIS内置的版本匹配),执行以下命令重新安装所有组件:
sudo apt-get install --reinstall gdal-bin=2.2.3+dfsg-2 gdal-data=2.2.3+dfsg-2 libgdal20=2.2.3+dfsg-2 python-gdal=2.2.3+dfsg-2 python3-gdal=2.2.3+dfsg-2
2. 确保libgdal-dev正确安装(关键!)
gdal-config是由libgdal-dev包提供的,之前的安装可能因为版本冲突没装到位,彻底重装这个包:
sudo apt-get remove --purge libgdal-dev sudo apt-get install libgdal-dev libproj-dev
执行完后验证:
- 输入
which gdal-config,应该输出/usr/bin/gdal-config - 输入
gdal-config --version,应该返回2.2.3
3. 让R正确识别gdal-config
如果上面步骤做完后,R还是找不到gdal-config,可能是R的环境变量PATH里没包含它的路径。在R控制台里手动设置后再安装:
# 把gdal-config所在的路径加入R的PATH Sys.setenv(PATH = paste("/usr/bin", Sys.getenv("PATH"), sep = ":")) # 从源码安装rgdal install.packages("rgdal", type = "source")
4. 备选方案:直接安装系统预编译的R包
如果源码编译还是有问题,可以试试Ubuntu官方源里的预编译rgdal包,这样能跳过编译过程:
sudo apt-get install r-cran-rgdal
为什么会出现这个问题?
核心原因是系统中GDAL组件版本不统一,导致libgdal-dev安装后gdal-config无法正常被R识别;另外QGIS内置的GDAL是独立运行的,不会影响系统层面的GDAL,但系统本身的版本冲突才是问题根源。
内容的提问来源于stack exchange,提问作者Sergio Bolívar
相关产品推荐
相关产品推荐

