Не удалось установить пакет fOptions R на искровом кластере ec2

Я развернул искровой кластер на ec2, используя скрипт spark-ec2. Я пытаюсь установить пакет R 'fOptions' в Rstudio на главном сервере, но я получаю следующие ошибки, в то время как install.packages() пытается установить зависимость с именем 'gss'

/ usr / bin / ld: не удается найти -lRlapack /usr/bin/ld: не удается найти -lRblas

Warning: Label 23057 at (1) defined but not used
gcc -m64 -std=gnu99 -I/usr/include/R -DNDEBUG  -I/usr/local/include    -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -c smolyak.c -o smolyak.o
smolyak.c: In function ‘eval’:
smolyak.c:181:10: warning: variable ‘dummy’ set but not used [-Wunused-but-set-variable]
smolyak.c: In function ‘calccoeff2’:
smolyak.c:381:10: warning: variable ‘dummy’ set but not used [-Wunused-but-set-variable]
smolyak.c: In function ‘fsum’:
smolyak.c:418:10: warning: variable ‘dummy’ set but not used [-Wunused-but-set-variable]
smolyak.c: At top level:
smolyak.c:378:8: warning: ‘calccoeff2’ defined but not used [-Wunused-function]
gcc -m64 -std=gnu99 -shared -L/usr/local/lib64 -o gss.so cdennewton.o cdennewton10.o dcoef.o dcore.o dcrdr.o ddeev.o deval.o dgold.o dmcdc.o dmudr.o dmudr0.o dmudr1.o dnewton.o dnewton10.o dprmut.o dqrslm.o drkl.o dset.o dsidr.o dsidr0.o dsms.o dstup.o dsytr.o dtrev.o gaussq.o hzdaux.o hzdnewton.o hzdnewton10.o llrmnewton.o reg.o smolyak.o -L/usr/lib64/R/lib -lRlapack -L/usr/lib64/R/lib -lRblas -lgfortran -lm -lquadmath -lgfortran -lm -lquadmath -L/usr/lib64/R/lib -lR
/usr/bin/ld: cannot find -lRlapack
/usr/bin/ld: cannot find -lRblas
collect2: ld returned 1 exit status
make: *** [gss.so] Error 1
ERROR: compilation failed for package ‘gss’
* removing ‘/home/rstudio/R/x86_64-redhat-linux-gnu-library/3.2/gss’
Warning in install.packages :
  installation of package ‘gss’ had non-zero exit status

The downloaded source packages are in
    ‘/tmp/RtmpGROBAw/downloaded_packages’

Есть также много других предупреждений. Я также попытался yum установить liblpack3 libperl-dev, но я получил еще одну ошибку - нет пакета libperl-dev и то же самое для других пакетов.

Другие пакеты, такие как ggplot2, были успешно установлены, и некоторые примеры кода работают нормально на кластере искр.

Есть ли решение этой ошибки или какой-либо обходной путь для установки fOptions и его зависимостей?

1 ответ

Это ошибочная установка самого R.

Он считает, что у него должны быть внутренние LAPACK и BLAS (из-за 'R' в Rlapack и Rblas), которые затем автоматически будут частью той же самой установки R, но они отсутствуют. В "нормальной" системе Unix у вас есть

edd@max:~$ R CMD config LAPACK_LIBS
-llapack
edd@max:~$ R CMD config BLAS_LIBS
-lblas
edd@max:~$ 

и которые используют системные версии LAPACK и BLAS. Если и когда вы конфигурируете R для использования его собственного, он показывает (как здесь в моей сборке R-devel)

edd@max:~$ RD CMD config LAPACK_LIBS
-L/usr/local/lib/R-devel/lib/R/lib -lRlapack
edd@max:~$ RD CMD config BLAS_LIBS
-L/usr/local/lib/R-devel/lib/R/lib -lRblas
edd@max:~$ 

но также дает местоположение. Так что вам нужно разобраться с той версией RedHat, которая у вас есть.

Другие вопросы по тегам