在Ubuntu v20.04上的R v4.0.1上安装mclust软件包v5.4.6挂起

问题描述 投票:0回答:1

在Ubuntu 20.04上使用R 4.0.1执行'Rscript -e“ install.packages('mclust')”``时,该过程在软件包准备期间挂起。知道如何解决或调试此问题吗?

ENV: R v4.0.1,GCC v9,Ubuntu v20.04

CMD: Rscript -e“ install.packages('mclust')”

Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/mclust_5.4.6.tar.gz'
Content type 'application/x-gzip' length 2877519 bytes (2.7 MB)
==================================================
downloaded 2.7 MB

* installing *source* package ‘mclust’ ...
** package ‘mclust’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
gfortran -fno-optimize-sibling-calls  -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-dEscXG/r-base-4.0.1=. -fstack-protector-strong  -c dmvnorm.f -o dmvnorm.o
gcc -std=gnu99 -I"/usr/share/R/include" -DNDEBUG      -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-dEscXG/r-base-4.0.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c init.c -o init.o
gfortran -fno-optimize-sibling-calls  -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-dEscXG/r-base-4.0.1=. -fstack-protector-strong  -c mclust.f -o mclust.o
gfortran -fno-optimize-sibling-calls  -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-dEscXG/r-base-4.0.1=. -fstack-protector-strong  -c mclustaddson.f -o mclustaddson.o
gcc -std=gnu99 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o mclust.so dmvnorm.o init.o mclust.o mclustaddson.o -llapack -lblas -lgfortran -lm -lquadmath -lgfortran -lm -lquadmath -L/usr/lib/R/lib -lR
installing to /usr/local/lib/R/site-library/00LOCK-mclust/00new/mclust/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
r installation package hang mclust
1个回答
0
投票

基于类似问题的R-sig-debian响应,我认为此问题是由于基于pthread的Blas和Lapack库版本中存在错误所致。

直到错误修复,解决方法是使用libopenblas-openmp-blapacklibopenblas-openmp-lapack库。

有两种方法可以使用这些库。

  1. 卸载基于pthread的库版本并安装基于openmp的库版本。
  2. 通过update-alternatives切换到基于Openmp的库版本。可以通过sudo update-alternatives --config <name>命令将设置为liblapack.so.3-x86_64-linux-gnulibblas.so.3-x86_64-linux-gnu
© www.soinside.com 2019 - 2024. All rights reserved.