如何在Ubuntu中安装R包"udunits2"

14

我正在尝试在Ubuntu上安装R包udunits2

sudo su - -c "R -e \"install.packages('udunits2', repos='http://cran.rstudio.com/')\""

但是我遇到了错误:

R version 3.4.2 (2017-09-28) -- "Short Summer"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> install.packages('udunits2', repos='http://cran.rstudio.com/')
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
trying URL 'http://cran.rstudio.com/src/contrib/udunits2_0.13.tar.gz'
Content type 'application/x-gzip' length 67182 bytes (65 KB)
==================================================
downloaded 65 KB

* installing *source* package ‘udunits2’ ...
** package ‘udunits2’ successfully unpacked and MD5 sums checked
checking for gcc... gcc -std=gnu99
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc -std=gnu99 accepts -g... yes
checking for gcc -std=gnu99 option to accept ISO C89... none needed
checking for XML_ParserCreate in -lexpat... yes
checking how to run the C preprocessor... gcc -std=gnu99 -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking udunits2.h usability... yes
checking udunits2.h presence... yes
checking for udunits2.h... yes
checking for ut_read_xml in -ludunits2... yes
configure: creating ./config.status
config.status: creating src/Makevars
** libs
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c udunits2_R.c -o udunits2_R.o
gcc -std=gnu99 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o udunits2.so udunits2_R.o -ludunits2 -lexpat -lexpat -ludunits2 -L/usr/lib/R/lib -lR
installing to /usr/local/lib/R/site-library/udunits2/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
Error: package or namespace load failed for ‘udunits2’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/usr/local/lib/R/site-library/udunits2/libs/udunits2.so':
  libudunits2.so.0: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/usr/local/lib/R/site-library/udunits2’

The downloaded source packages are in
        ‘/tmp/Rtmp0X1Xn4/downloaded_packages’
Warning message:
In install.packages("udunits2", repos = "http://cran.rstudio.com/") :
  installation of package ‘udunits2’ had non-zero exit status

你有任何想法应该如何继续吗?

1个回答

26

看起来你缺少需要安装R包udunits2libudunits2软件包。请先使用以下命令安装它:

sudo apt-get install libudunits2-dev
希望这可以帮到你。

谢谢!如果您能帮我升级Ubuntu上的GDAL,那就太好了。目前它是1.11.3版本,而对于sf软件包,它应该大于2。我已经阅读了[https://launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable],但当我尝试:`sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable时,它返回错误:无法添加PPA:'ppa:~ubuntugis / ubuntu / ubuntugis-unstable'。 错误:'〜ubuntugis'用户或团队不存在。 `您有什么建议吗? - Ali Hadjihoseini
1
嗨,阿里,恐怕我自己也不是Ubuntu专家,我只知道足够的知识来应付。这个链接是否有帮助:https://dev59.com/AKLia4cB1Zd3GeqPhliR?否则,您可以考虑在SO上提出一个单独的问题。 - Florian
非常感谢您。 - Ali Hadjihoseini
3
在Linux Mint 18.8上运行良好,非常感谢! - Fábio
你知道我如何在没有sudo权限的情况下完成这个操作吗?我在服务器上 - 谢谢! - QPaps

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接