【问题标题】:Shiny deployment error: upgrade GEOS to 3.6.0 or later while installing package ‘lwgeom’闪亮的部署错误:在安装包“lwgeom”时将 GEOS 升级到 3.6.0 或更高版本
【发布时间】:2020-09-21 17:10:18
【问题描述】:

我有一个闪亮的应用程序在我的电脑上运行良好。我使用包sfleaflettmap。其中之一需要包lwgeom 作为依赖项。在安装包lwgeom 时,闪亮的部署给了我以下错误消息。 GEOS 是什么?以及如何将GEOS 升级到 3.6.0 或更高版本?

Building R package: lwgeom (0.2-4)

/mnt/packages/build /mnt

* installing to library ‘/opt/R/4.0.0/lib/R/library’

* installing *source* package ‘lwgeom’ ...

** package ‘lwgeom’ successfully unpacked and MD5 sums checked

** using staged installation

configure: CC: gcc

configure: CXX: g++ -std=gnu++11

configure: pkg-config proj exists, will use it

configure: PROJ: 4.9.2

checking for pj_init_plus in -lproj... yes

checking PROJ: epsg found and readable... yes

configure: POSTGIS_PROJ_VERSION: 49

checking for geos-config... /usr/bin/geos-config

checking geos-config usability... yes

configure: GEOS: 3.5.1

checking GEOS version >= 3.6.0... no

configure: error: upgrade GEOS to 3.6.0 or later

ERROR: configuration failed for package ‘lwgeom’

* removing ‘/opt/R/4.0.0/lib/R/library/lwgeom’

################################# End Task Log ################################# 
Error: Unhandled Exception: Child Task 741115836 failed: Error building image: Error building lwgeom (0.2-4). Build exited with non-zero status: 1
Execution halted  

【问题讨论】:

    标签: shiny leaflet sf geos


    【解决方案1】:

    来自lwgeom readme

    lwgeom 依赖于sf,必须先安装。该软件包使用 liblwgeom 库,并编译了 liblwgeom 的已发布(和修改)版本。它链接到 GEOS 和 PROJ 库。

    要从源安装,从源安装sf就足够了;此包(PROJ、GEOS)的资源正在被重复使用。

    来自sf homepage

    R 的简单功能

    一个为 R 提供简单功能访问的包。包 sf:

    [剪辑]

    • GEOS 的接口以支持包括DE9-IM 在内的几何运算

    这应该回答您的“GEOS 是什么?”问题,但您可能想访问GEOS homepage 以获得更长的版本。

    无论如何,您似乎是在 Linux 上从源代码构建 lwgeom,所以请阅读 its install-from-source instructions。您可能想要升级libgeos-dev 系统包,但升级过程取决于您的Linux 发行版。让我再次引用sf 主页,假设您正在运行 Ubuntu 作为您的发行版:

    Ubuntu

    [剪辑]

    但是,为了获得 GDAL 等更多最新版本的依赖项,我们建议将 ubuntugis-unstable PPA 添加到包存储库并按如下方式安装它们:

    sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
    sudo apt-get update
    sudo apt-get install libudunits2-dev libgdal-dev libgeos-dev libproj-dev 
    

    (很明显,不同的发行版需要不同的方法来安装/升级系统包)

    【讨论】:

    • 谢谢。这有助于我更好地理解问题,但我闪亮的应用程序仍然无法加载。我正在 Windows 上构建闪亮的应用程序。我安装了sf,它链接到 GEOS 3.8.0、GDAL 3.0.4 和 PROJ 6.3.1。我还安装了lwgeom,它链接到 liblwgeom 3.0.0beta1 r16016、GEOS 3.8.0 和 PROJ 6.3.1。当我尝试将包加载到 shinyapps.io 时,问题就开始了。我认为 shinyapps.io 是使用 Ubuntu Linux 作为操作系统构建的。请注意,错误表明我将 GEOS 升级到 3.6.0 或更高版本,而 sf 链接到 GEOS 3.8.0!
    • 我也有同样的问题。这个问题也可能在其他地方减少了。编辑;这里——stackoverflow.com/questions/62097231/…
    【解决方案2】:

    更新: 我通知了 shinyapps.io,几周后他们升级到了 GEOS 3.8.0。所以,现在我的应用可以正常部署了。

    【讨论】:

      猜你喜欢
      • 2011-06-30
      • 2022-01-03
      • 2018-08-17
      • 2012-09-18
      • 2019-05-31
      • 2014-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多