软件包“bigmemory”的安装非零

Installation of package ‘bigmemory’ had non-zero

我已经安装了 bigmemory 4.4.14 版本。现在我正在尝试将它升级到 bigmemory 版本 4.6.1 并收到以下错误消息:

/usr/bin/ld: cannot find -luuid collect2: error: ld returned 1 exit status make: *** [/usr/share/R/share/make/shlib.mk:10: bigmemory.so] Error 1 ERROR: compilation failed for package ‘bigmemory’

  • removing ‘/home/super/R/x86_64-pc-linux-gnu-library/4.2/bigmemory’
  • restoring previous ‘/home/super/R/x86_64-pc-linux-gnu-library/4.2/bigmemory’ Warning in install.packages : installation of package ‘bigmemory’ had non-zero exit status

我尝试通过以下方式升级:

 Rstudio (Tools -> check for package update).

 install.packages("bigmemory")

 devtools::install_github("kaneplusplus/bigmemory")

更新和升级了 ubntu 和 R 包:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install r-base-dev

sudo apt install r-cran-bigmemory

update.packages(ask = FALSE)

install.packages("~/R/x86_64-pc-linux-gnu-library/4.2/bigmemory_4.6.1.tar.gz", repos = NULL, type = "source")

sessionInfo() R version 4.2.0 (2022-04-22) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 20.04.4 LTS

Matrix products: default BLAS:
/usr/lib/x86_64-linux-gnu/blas/libblas.so.3.9.0 LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.9.0

locale: [1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
LC_TIME=en_US.UTF-8 LC_COLLATE=en_GB.UTF-8
LC_MONETARY=en_US.UTF-8 [6] LC_MESSAGES=en_GB.UTF-8
LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C
LC_TELEPHONE=C [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

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

loaded via a namespace (and not attached): [1] compiler_4.2.0 tools_4.2.0

几天来我一直在苦苦挣扎,但仍然遇到同样的问题,我们将不胜感激任何帮助。

错误消息的相关部分是“找不到-luuid”。这意味着您缺少 libuuid 系统依赖项,您需要先单独安装它,然后才能安装 R 包。由于您使用的是 Ubuntu,您可以通过

执行此操作
sudo apt install uuid-dev

一般情况下,遇到这种报错信息,上网搜索报错信息的相关部分通常会有所帮助,这将导致如何安装缺少的系统依赖项的说明(它们的包名是'总是很明显,如上所述)。