簡體   English   中英

在Travis構建中解決rgdal包失敗問題

[英]Resolve rgdal package failing on Travis build

我在Travis構建中成功使用了rgdal R軟件包大約一年,幾乎沒有問題。

隨着近期的1.4-2版本部署rgdal的-以前路過-建立開始到失敗消息

In file included from inverser.c:5:0:   
/tmp/Rtmpysf7it/R.INSTALL748c54b7a89/rgdal/inst/include/projects.h:150:33: 
error: conflicting types for ‘projUV’  typedef struct { double u, v; } projUV;
                                 ^ 
In file included from inverser.c:3:0: /usr/include/proj_api.h:54:37:
 note: previous declaration of ‘projUV’ was here
     typedef struct { double u, v; } projUV;

我不確定“舊”proj_api.h來自何處以及如何在Travis環境中刪除它。

我的travis.yml配置如下:

language: r
dist: trusty
sudo: false

cache:
  packages: yes

r_packages:
  - testthat
  - roxygen2
  - covr

addons:
  apt:
    packages:
      - gdal-bin
      - proj-bin
      - libgdal-dev
      - libgdal1-dev
      - libproj-dev
      - libgeos-dev
      - r-cran-ncdf4
      - libv8-3.14-dev
      - libprotobuf-dev
      - protobuf-compiler
      - libudunits2-dev
      - libnetcdf-dev
      - libjq-dev

before_install:
    - sudo add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable
    - sudo add-apt-repository -y ppa:opencpu/jq
    - sudo apt-get --yes --force-yes update -qq

after_success:
  - Rscript -e 'covr::coveralls()'

任何有關如何解決此問題的建議都非常感謝

答案2是正確的答案。 我是rgdal維護者,並在郵件和推特上權威地回答了這個問題。 當過時的PROJ版本的用戶(前4.9.3,2016年9月之前)確認1.4-3解決了他們的問題時,我會向CRAN提交1.4-3。 我不會也不會遵循SO,但如果你做了正確的事並發布到R-sig-geo,你會引起我的注意。

我建議對仍在使用PROJ 4.8.0升級的任何系統施加巨大壓力。 該版本於2012年3月13日發布,今天也是7歲生日,真的值得回收它。

只是為了澄清你如何告訴Travis從R-Forge安裝,正如Edzer和Roger所建議的那樣。 我相信你可以在.travis.yml任何地方添加以下.travis.yml

repos: 
  CRAN: https://cran.rstudio.com
  rforge: http://R-Forge.R-project.org

有關詳細信息,請參閱Travis R配置文檔

或者你可以在before_install塊中運行R命令,如下所示:

before_install:
  - R -e 'install.packages("rgdal", repos=c("http://R-Forge.R-project.org", "http://cran.rstudio.com"))'

如果不那么整潔,這可能會更明顯一些。

解決此問題的一種方法是使用舊版本的rgdal 要安裝特定版本的rgdal軟件包,可以rgdal添加到DESCRIPTION文件中:

Remotes: cran/rgdal@1.3-9

這將安裝並使用之前的版本(1.3-9),即1.4-2之前發布的版本。 這至少對我有用。

從這里得到了想法: https//travis-ci.community/t/travis-build-ignoring-r-package-version-in-description/2431/2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM