在Ubuntu中安装“ choroplethr”

时间:2018-11-23 05:28:42

标签: r ggplot2 tidyverse rgdal choroplethr

我正在尝试安装“ choroplethr”。

我已阅读以下与外观相关的错误:

他们的建议是安装一些我已经安装的东西。我将libudunits2安装在标准位置,并具有:

$ sudo apt-get install libudunits2-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libudunits2-dev is already the newest version (2.2.26-1).

我可以看到标题:

$ ll /usr/include/ | grep unit
-rw-r--r--   1 root root  39998 Jan  5  2018 udunits2.h
-rw-r--r--   1 root root   5195 Jan  5  2018 udunits.h

但是,在安装时,出现此错误:

$ R
R version 3.5.1 (2018-07-02) -- "Feather Spray"

> install.package("choroplethr", dep=T)
...
configure: error: in `/tmp/RtmpWC06JV/R.INSTALL7cbb4928db67/units':
configure: error: 
--------------------------------------------------------------------------------
  Configuration failed because libudunits2.so was not found. Try installing:
    * deb: libudunits2-dev (Debian, Ubuntu, ...)
    * rpm: udunits2-devel (Fedora, EPEL, ...)
    * brew: udunits (OSX)
  If udunits2 is already installed in a non-standard location, use:
    --configure-args='--with-udunits2-lib=/usr/local/lib'
  if the library was not found, and/or:
    --configure-args='--with-udunits2-include=/usr/include/udunits2'
  if the header was not found, replacing paths with appropriate values.
  You can alternatively set UDUNITS2_INCLUDE and UDUNITS2_LIBS manually.
--------------------------------------------------------------------------------

我已经完成了这些设置,但是

install.packages("udunits2", configure.args = '--with-udunits2-include=/usr/include/udunits2')

-----Error: libudunits2.a not found-----
     If the udunits2 library is installed in a non-standard location,
     use --configure-args='--with-udunits2-lib=/usr/local/lib' for example,
     or --configure-args='--with-udunits2-include=/usr/include/udunits2'
     replacing paths with appropriate values for your installation.
     You can alternatively use the UDUNITS2_INCLUDE and UDUNITS2_LIB
     environment variables.
     If udunits2 is not installed, please install it.
     It is required for this package.

我想念什么?该软件包仅OSX吗?

1 个答案:

答案 0 :(得分:1)

对于具有R 3.5的Ubuntu,您可以使用c2d4u3.5 PPA,由在CRAN上为您带来R Ubuntu软件包的人员提供。 https://cran.r-project.org/bin/linux/ubuntu/README.htmlhttp://dirk.eddelbuettel.com/blog/2017/12/22/

sudo add-apt-repository ppa:marutter/c2d4u3.5
sudo apt-get update

之后,您可以为大多数CRAN软件包安装二进制软件包:

sudo apt-get install r-cran-choroplethr

这应该适用于CRAN任务视图中提到的所有软件包。

除此之外,我尝试使用docker重现您的安装问题:

FROM ubuntu:18.04
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
 && apt-get install --yes --no-install-recommends gnupg ca-certificates \
 && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 \
 && echo "deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/" >> /etc/apt/sources.list \
 && apt-get update \
 && apt-get install  --yes --no-install-recommends r-base-dev libudunits2-dev \
 && Rscript -e 'install.packages(c("units", "udunits2"))'

但是,该映像的构建没有问题。