如何在 Ubuntu 12.10 上安装 rgdal?

如何在 Ubuntu 12.10 上安装 rgdal?

我正在努力rgdal在 Ubuntu 12.10 上安装库。

从 R 内部安装会导致错误:

错误:未找到 gdal-config 找不到随 GDAL 分发的 gdal-config 脚本。如果您尚未安装 GDAL 库,可以从以下位置下载源代码 http://www.gdal.org/如果您已安装 GDAL 库,请确保 gdal-config 在您的路径中。尝试在 shell 提示符下输入 gdal-config 并查看它是否运行。如果没有,请使用:--configure-args='--with-gdal-config=/usr/local/bin/gdal-config' 以及适合您安装的值。

错误:软件包“rgdal”配置失败*删除“/home/rdk/R/x86_64-pc-linux-gnu-library/2.15/rgdal”install.packages 中的警告:软件包“rgdal”的安装退出状态为非零

R-sig-Geo SE 问题和其他网站向我指出了 的要求libgdal1-dev

但当我尝试

sudo apt-get 安装 libgdal1-dev

我最终收到另一条错误消息

某些软件包无法安装。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定的发行版,则某些必需的软件包尚未创建或已从 Incoming 中移出。以下信息可能有助于解决这种情况:

以下软件包具有未满足的依赖项:libgdal1-dev:依赖:libgdal-dev但不会安装E:无法纠正问题,您持有损坏的软件包。

再次 - 当我尝试安装libgdal-dev另一个依赖项时出现错误

以下软件包具有未满足的依赖项:libgdal-dev:依赖:libgeos-dev,但不会安装依赖:libspatialite-dev,但不会安装

再次尝试 libgeos-dev给出消息:

Depends: libgeos-c1 (= 3.3.3-1.1) but 3.3.3-2~precise2 is to be installed
E: Unable to correct problems, you have held broken packages.

libspatialite-dev

Depends: libspatialite3 (= 3.1.0~rc2-1ubuntu1) but
3.1.0~rc2-2~precise1 is to be installed

有什么办法可以解决这些依赖问题并rgdal在 Ubuntu 中运行吗?

我的sessionInfo()

R 版本 2.15.1(2012-06-22)平台:x86_64-pc-linux-gnu(64 位)

答案1

您可以在这里找到更新的答案:http://robinlovelace.net/r/2013/11/26/installing-rgdal-on-ubuntu.html

本质上,以下三行代码应该对其进行排序:

sudo apt-get install aptitude # install aptitude as an alternative to apt-get
sudo aptitude install libgdal-dev # install the package (you may have to respond to queries here)
sudo aptitude install libproj-dev # install the proj.4 projection library

在这个问题上花了很长时间,所以希望这个更新的答案对其他人有用。如果有的话请告诉我!

答案2

尝试一起运行它们并指定版本,如下所示:

sudo apt-get install libgdal1-dev libgdal-dev libgeos-c1=3.3.3-1.1 libspatialite3=3.1.0~rc2-1ubuntu1

apt-get 不喜欢降级软件包,但如果您指定的话它就会降级。

答案3

2016 年 1 月,在 Ubuntu 14.04.2(以及 R 3.2.2)上,我需要以下内容来获得格达尔以及互补的(通常非常有用的)gdal实用程序安装的软件包:

sudo apt-get update
sudo apt-get -y install libgdal1h
sudo apt-get -y install libgdal1-dev
sudo apt-get install libproj-dev
sudo apt-get install gdal-bin
Rscript 'install.packages(c("rgdal", "gdalUtils"))'

更新:截至 2017 年 1 月,libgdal 的版本为 1i,因此第二行代码应为:

sudo apt-get -y install libgdal1i

答案4

为了在 Ubuntu 12.04 上安装 rgdal,我必须安装(并保留)许多特定版本的软件包。基本上,我尝试了每个软件包并安装了所需版本的依赖项,直到我可以回到最初的目标,即安装 libgdal1-dev

sudo apt-get install libspatialite3=3.0.0~beta20110817-3
echo libspatialite3 hold | sudo dpkg --set-selections
sudo apt-get install libspatialite-dev
sudo apt-get install libgeos-c1=3.3.3-1.1~pgdg12.4+1
echo libgeos-c1 hold | sudo dpkg --set-selections
sudo apt-get install libgdal1=1.9.0-3.1~pgdg12.4+1
echo libgdal1 hold | sudo dpkg --set-selections

sudo apt-get install libgdal-dev
sudo apt-get install libgdal1-dev
gdal-config # now works, and can now install rgdal

相关内容