通过来源

时间:2017-04-13 10:11:57

标签: r gdal rgdal install.packages proj

堆栈上有很多这样的问题......我发现了很多,但它并没有解决我的问题。

这些是我曾经尝试过的事情。去CRAN网站  cran.r-project.org/web/packages/rgdal/index.html

我们看到,为了构建这个包,我们需要

  • GDAL> = 1.6.3,来自trac.osgeo.org/gdal/wiki/DownloadSource和
  • 的库
  • PROJ.4(proj> = 4.4.9)来自download.osgeo.org/proj/;

此外,我们需要依赖

  • 取决于:R(≥3.3.0),方法,sp(≥1.1-0)

但这些已经安装好了。

我们已经安装了系统依赖项,因为

[]$ gdal-config --version
2.1.3
[]$ proj
Rel. 4.4.9, 29 Oct 2004
usage: proj [ -beEfiIlormsStTvVwW [args] ] [ +opts[=arg] ] [ files ]

但是,当我们尝试按

安装软件包时
install.packages("rgdal_1.2-5.tar.gz",type = "source",repos = NULL,
configure.args=c('--with-proj-include=/usr/local/include','--with-proj-lib=/usr/local/lib'))

configure.args选项来自答案 rgdal package installation

但是我们在安装时仍会收到错误...这是日志的一部分

    *** installing help indices
      converting help for package ‘rgdal’
        finding HTML links ... done
        CRS-class                               html
        GDALDataset-class                       html
        GDALDriver-class                        html
        GDALMajorObject-class                   html
        GDALRasterBand-class                    html
        GDALReadOnlyDataset-class               html
        GDALReadOnlyDataset-methods             html
        GDALTransientDataset-class              html
        GridsDatums                             html
        RGB2PCT                                 html
        SGDF2PCT                                html
        SpatialGDAL-class                       html
        closeDataset-methods                    html
        displayDataset                          html
        llgrid                                  html
    Rd warning: /tmp/RtmppvlZ6x/R.INSTALL233feb7dc50/rgdal/man/llgrid.Rd:11: missing file link ‘Spatial’
    Rd warning: /tmp/RtmppvlZ6x/R.INSTALL233feb7dc50/rgdal/man/llgrid.Rd:16: missing file link ‘gridat’
    Rd warning: /tmp/RtmppvlZ6x/R.INSTALL233feb7dc50/rgdal/man/llgrid.Rd:17: missing file link ‘gridat’
        make_EPSG                               html
        nor2k                                   html
        projInfo                                html
        project                                 html
        readGDAL                                html
    Rd warning: /tmp/RtmppvlZ6x/R.INSTALL233feb7dc50/rgdal/man/readGDAL.Rd:136: missing file link ‘flipVertical’
        readOGR                                 html
        showWKT                                 html
        spTransform-methods                     html
        wrappers                                html
        writeOGR                                html
    ** building package indices
    ** installing vignettes
    ** testing if installed package can be loaded
    Error in dyn.load(file, DLLpath = DLLpath, ...) :
      unable to load shared object '/usr/lib64/R/library/rgdal/libs/rgdal.so':
      libgdal.so.20: cannot open shared object file: No such file or directory
    Error: loading failed
    Execution halted
    ERROR: loading failed
    * removing ‘/usr/lib64/R/library/rgdal’
    Warning message:
    In install.packages("rgdal_1.2-5.tar.gz", type = "source", repos = NULL) :
      installation of package ‘rgdal_1.2-5.tar.gz’ had non-zero exit status

请注意,此处触发的警告显然没有显示停止(如https://groups.google.com/forum/#!topic/batchjobs/TvwTbqrWFyU所述) 所以似乎系统依赖(GDAL和PROJ)都得到满足......包依赖(方法,sp)也是如此。但是,安装无法定位某些文件.. 我知道从stackoverflow,你可以给R的install.packages()命令提供某些参数...如上面的代码片段所示..所以它可能是我没有指定足够的路径......或者它的东西其他

Atlast,gdal和proj在旧的edgenode上的位置由

给出
  • gdal:/usr/local/lib/libgdal.so.20
  • proj:/usr/local/lib/libproj.so.0 11:26:32

你们可以暗示从这里去哪里吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,在Ubuntu的另一个线程中,答案是rgdal-config给出了两个安装点,这是错误的,所以他卸载了一个。在另一个线程上,解决方案是安装libgdal-dev,因为需要从源代码安装它们。

我在Arch Linux上,所以这些都不是我的答案。

但是,我确实为libgdal-dev找到了一个AUR包" python-gdal"给了我所需要的代表,但关键是rgdal的可选依赖(对我来说安装没有问题)是mariadb。在错误中,您可以看到它无法与mysql_client18进行通信..

所以我安装了maria db,sudo pacman -S mariadb,我终于可以为R安装r-cran-gdal了。用于r-cran-gdal的PKGBUILD在AUR上不是最新的,而是手动编辑PKGBUILD和makepkg -si终于工作了。