如何在 Ubuntu 上安装 R 包“RNetCDF”和“ncdf”?
Posted
技术标签:
【中文标题】如何在 Ubuntu 上安装 R 包“RNetCDF”和“ncdf”?【英文标题】:how to install R packages "RNetCDF" and "ncdf" on Ubuntu? 【发布时间】:2012-07-04 09:41:08 【问题描述】:我想在 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
。我需要做其他事情吗?
【问题讨论】:
您需要安装这些包的-dev
以获取编译包所需的头文件。
@贾斯汀谢谢。 ncdf
唯一需要的附加包是 libnetcdf-dev
RNetCDF
、udunits-bin
和 libudunits2-dev
也是必需的
【参考方案1】:
您需要安装这些包的-dev
以获取编译包所需的标头。在这种情况下,您需要libnetcdf-dev
、udunits-bin
和libudunits2-dev
【讨论】:
为了安装ncdf4包(对ncdf包的更新),我还需要运行sudo apt-get install netcdf-bin
有谁知道为什么这仍然是必要的?这个答案已经 7 年了,它仍然需要某种烫发修复。【参考方案2】:
就我而言,需要 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")
【讨论】:
【参考方案3】:只是澄清一下,因为您最初的问题是在 R 中,并且修复是在 R 之外应用的。我最初试图这样做
install.packages("libnetcdf-dev"),这不起作用。
相反,从 R 外部:sudo apt-get install libnetcdf-dev
这为我解决了问题。
【讨论】:
【参考方案4】:在 Ubuntu 20.04 LTS 中,可以使用 bash 命令 sudo apt install r-cran-ncdf4
安装 ncdf4 包(supersedes ncdf),包括所有依赖项。同样对于 RNetCDF,您可以使用 sudo apt install r-cran-rnetcdf
。
【讨论】:
以上是关于如何在 Ubuntu 上安装 R 包“RNetCDF”和“ncdf”?的主要内容,如果未能解决你的问题,请参考以下文章
如何在Ubuntu 16.04上安装Anaconda Python Distribution