我想在Ubuntu中使用R软件包RNetCDF和ncdf。
当我尝试install.packages('RNetCDF')
或install.packages('ncdf')
时,我会遇到类似的错误:
...
ncdf.c:3:20: fatal error: netcdf.h: No such file or directory
compilation terminated.
make: *** [ncdf.o] Error 1
ERROR: compilation failed for package ‘ncdf’
...
Warning message:
In install.packages("ncdf") :
installation of package ‘ncdf’ had non-zero exit status
安装了Ubuntu存储库中的包libnetcdf6
和netcdf-bin
。我还需要做点什么吗?
答案 0 :(得分:13)
您需要安装这些软件包的-dev
以获取编译软件包所需的标头。在这种情况下,您需要libnetcdf-dev
,udunits-bin
和libudunits2-dev
答案 1 :(得分:6)
就我而言,需要libudunits2-dev包。
sudo apt-get install libudunits2-dev
由于我从源代码安装了NetCDF,因此我必须手动指定 lib 和 include 文件夹的位置
install.packages("/home/user/Downloads/RNetCDF_1.6.1-2.tar.gz",
repos = NULL,
type="source",
dependencies=FALSE,
configure.args="--with-netcdf-include=/usr/local/netcdf-4.2.1-build/include --with-netcdf-lib=/usr/local/netcdf-4.2.1-build/lib")
答案 2 :(得分:0)
只是为了澄清,因为你的初始问题是在R中,并且修复是在R之外应用的。我最初是在尝试做
install.packages(“libnetcdf-dev”),它不起作用。
相反,来自R的外部:sudo apt-get install libnetcdf-dev
为我修好了。
答案 3 :(得分:0)
在 Ubuntu 20.04 LTS 中,可以使用 bash 命令 sudo apt install r-cran-ncdf4
安装 ncdf4 软件包(supersedes ncdf),包括所有依赖项。同样,对于 RNetCDF,您可以使用 sudo apt install r-cran-rnetcdf
。