6

我正在尝试ncdf在 Ubuntu 10.04 服务器上安装 r 包:

install.packages("ncdf", type = "source")
Installing package into ‘/home/me/R/x86_64-pc-linux-gnu-library/3.0’
(as ‘lib’ is unspecified)
trying URL 'http://cran.rstudio.com/src/contrib/ncdf_1.6.6.tar.gz'
Content type 'application/x-gzip' length 79403 bytes (77 Kb)
opened URL
==================================================
downloaded 77 Kb

* installing *source* package ‘ncdf’ ...
** package ‘ncdf’ successfully unpacked and MD5 sums checked
checking for nc-config... no
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 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... no
checking for sys/types.h... no
checking for sys/stat.h... no
checking for stdlib.h... no
checking for string.h... no
checking for memory.h... no
checking for strings.h... no
checking for inttypes.h... no
checking for stdint.h... no
checking for unistd.h... no
checking netcdf.h usability... no
checking netcdf.h presence... no
checking for netcdf.h... no
configure: error: netcdf header netcdf.h not found
ERROR: configuration failed for package ‘ncdf’
* removing ‘/home/me/R/x86_64-pc-linux-gnu-library/3.0/ncdf’
Warning in install.packages :
  installation of package ‘ncdf’ had non-zero exit status

我还下载了源包并尝试在shell中安装,但得到了相同的结果。

wget http://cran.r-project.org/src/contrib/ncdf_1.6.6.tar.gz
R CMD INSTALL ncdf_1.6.6.tar.gz 

显然,安装程序没有找到正确的头文件。所以我手动搜索了该文件并找到了它:

root@fourier:/usr/include# ls -ahl netcdf.h
-rw-r--r-- 1 root root 30K 2009-12-22 04:47 netcdf.h 

netcdf-binnetcdf-dbgnetcdf-doclibnetcdf-dev都已libnetcdf4正确安装。apt-get已是最新。这是我的会话信息:

R version 3.0.1 (2013-05-16)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] tools_3.0.1

如何说服 R 安装程序使用位于下的头文件/usr/include

4

2 回答 2

8

You need to look at the configure.in script to see exactly what it tests for. Maybe it is expecting netcdf.h in a subdirectory rather than directly in /usr/include.

I think I have built this in the past. I could take another look later.

于 2013-06-10T16:29:20.387 回答
1

无需下载源码,只需要设置一些环境变量即可。对我来说,这是

 export NETCDF_INCLUDE=/usr/include

这样做后,install.packages("ncdf")工作。

这在INSTALL文件中有所描述。

于 2014-09-04T20:19:12.913 回答