wrathematics / float

Single precision (float) matrices for R.
Other
46 stars 12 forks source link

float installation fails in R 4.1.3 on CentOs 7 #46

Open Kdreval opened 2 years ago

Kdreval commented 2 years ago

Hi! I am trying to install the text2vec which ultimately fails complaining about the float dependency. The culprit seems to be

undefined symbol: iparam2stage_

I have noticed the BLAS/LAPACK are available on my system, but I still get this message during the installation - perhaps it has something to do with configuration?

No single precision BLAS functions detected in your R BLAS library, so we are using the reference implementation shipped with the float package. If you believe you are seeing this message in error, please contact the package maintainer.

The complete log:

> install.packages("float")
Installing package into ‘/home/kdreval/R/x86_64-pc-linux-gnu-library/4.1’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/src/contrib/float_0.3-0.tar.gz'
Content type 'application/x-gzip' length 1425826 bytes (1.4 MB)
==================================================
downloaded 1.4 MB

* installing *source* package ‘float’ ...
** package ‘float’ successfully unpacked and MD5 sums checked
** using staged installation
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for sinf in -lm... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... no
checking size of int... 4
checking for gcc option to support OpenMP... -fopenmp
checking for echo... yes
checking for grep... yes
checking for sgemm_ in -lRblas... no
checking for sgetrf_ in -lRblas... no
checking for sgetrf_ in -lRlapack... no
checking for sgemm_ in -lopenblas... no
checking for sgemm_ in -lmkl... no
checking for sgemm_ in -latlas... no
checking for sgemm_ in -lblas... no
checking for sgetrf_ in -lopenblas... no
checking for sgetrf_ in -lmkl... no
checking for sgetrf_ in -latlas... no
checking for sgetrf_ in -llapack... no

******************* Results of float package configure *******************
* OpenMP Report:
    >> OPENMP_CFLAGS=-fopenmp
    >> OMPFLAGS_C=$(SHLIB_OPENMP_CFLAGS)
    >> OMPFLAGS_F=$(SHLIB_OPENMP_FFLAGS)
* byte order: little endian
* NOTE: no single precision BLAS symbols found. Building reference version
    >> BLAS_LIBFLAGS=
* NOTE: no single precision LAPACK symbols found. Building reference version
    >> LAPACK_LIBFLAGS=

No single precision BLAS functions detected in your R BLAS library, so we are using the reference implementation shipped with the float package. If you believe you are seeing this message in error, please contact the package maintainer.
*************************************************************************

configure: creating ./config.status
config.status: creating src/Makevars
config.status: creating src/endianness.h
config.status: creating R/02-libflags.r
config.status: creating src/config.h
config.status: src/config.h is unchanged
** libs
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c backsolve.c -o backsolve.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c binary.c -o binary.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c chol.c -o chol.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c chol2inv.c -o chol2inv.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c colSums.c -o colSums.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c cond.c -o cond.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c converters.c -o converters.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c crossprod.c -o crossprod.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c eigen.c -o eigen.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c extremes.c -o extremes.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c float_native.c -o float_native.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c isSymmetric.c -o isSymmetric.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c machine.c -o machine.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c math.c -o math.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c matmult.c -o matmult.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c NA.c -o NA.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c norm.c -o norm.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c qr.c -o qr.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c rand.c -o rand.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c scale.c -o scale.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c sign.c -o sign.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c solve.c -o solve.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c sum.c -o sum.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c svd.c -o svd.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c sweep.c -o sweep.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c xpose.c -o xpose.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c utils/matmult.c -o utils/matmult.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c utils/symmetrize.c -o utils/symmetrize.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -I"/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/include" -DNDEBUG   -I/usr/local/include  -fopenmp -I../inst/include/ -fpic  -g -O2  -c utils/xpose.c -o utils/xpose.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c slapack_wrap.f -o slapack_wrap.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c  lapack/la_constants.f90 -o lapack/la_constants.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c  lapack/la_xisnan.f90 -o lapack/la_xisnan.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c  lapack/sf90.f90 -o lapack/sf90.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/slapack1.f -o lapack/slapack1.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/slapack2.f -o lapack/slapack2.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/slapack3.f -o lapack/slapack3.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/slapack4.f -o lapack/slapack4.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/slamchf77.f -o lapack/slamchf77.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/ilas.f -o lapack/ilas.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gfortran -fno-optimize-sibling-calls -fopenmp -g -O2 -msse2 -mfpmath=sse -fpic  -g -O2  -c lapack/sblas.f -o lapack/sblas.o
/gsc/software/linux-x86_64-centos7/gcc-7.2.0/bin/gcc -shared -L/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/lib -L/gsc/software/linux-x86_64-centos7/gcc-7.2.0/lib64 -o float.so backsolve.o binary.o chol.o chol2inv.o colSums.o cond.o converters.o crossprod.o eigen.o extremes.o float_native.o isSymmetric.o machine.o math.o matmult.o NA.o norm.o qr.o rand.o scale.o sign.o solve.o sum.o svd.o sweep.o xpose.o utils/matmult.o utils/symmetrize.o utils/xpose.o slapack_wrap.o lapack/la_xisnan.o lapack/la_constants.o lapack/sf90.o lapack/slapack1.o lapack/slapack2.o lapack/slapack3.o lapack/slapack4.o lapack/slamchf77.o lapack/ilas.o lapack/sblas.o -lgfortran -lm -lquadmath -fopenmp -lgfortran -lm -lquadmath -L/gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/lib -lR
ar crs libfloat.a backsolve.o binary.o chol.o chol2inv.o colSums.o cond.o converters.o crossprod.o eigen.o extremes.o float_native.o isSymmetric.o machine.o math.o matmult.o NA.o norm.o qr.o rand.o scale.o sign.o solve.o sum.o svd.o sweep.o xpose.o utils/matmult.o utils/symmetrize.o utils/xpose.o slapack_wrap.o lapack/la_xisnan.o lapack/la_constants.o lapack/sf90.o lapack/slapack1.o lapack/slapack2.o lapack/slapack3.o lapack/slapack4.o lapack/slamchf77.o lapack/ilas.o lapack/sblas.o
ranlib libfloat.a
installing via 'install.libs.R' to /home/kdreval/R/x86_64-pc-linux-gnu-library/4.1/00LOCK-float/00new/float
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
Creating a generic function for ‘backsolve’ from package ‘base’ in package ‘float’
Creating a generic function for ‘forwardsolve’ from package ‘base’ in package ‘float’
Creating a generic function for ‘chol2inv’ from ‘base’ in package ‘float’
    (from the saved implicit definition)
Creating a generic function for ‘chol2inv’ from package ‘base’ in package ‘float’
Creating a generic function for ‘colSums’ from package ‘base’ in package ‘float’
Creating a generic function for ‘rowSums’ from package ‘base’ in package ‘float’
Creating a generic function for ‘colMeans’ from package ‘base’ in package ‘float’
Creating a generic function for ‘rowMeans’ from package ‘base’ in package ‘float’
Creating a generic function for ‘rcond’ from ‘base’ in package ‘float’
    (from the saved implicit definition)
Creating a generic function for ‘rcond’ from package ‘base’ in package ‘float’
Creating a generic function for ‘typeof’ from package ‘base’ in package ‘float’
Creating a generic function for ‘storage.mode’ from package ‘base’ in package ‘float’
Creating a generic function for ‘crossprod’ from package ‘base’ in package ‘float’
Creating a generic function for ‘tcrossprod’ from package ‘base’ in package ‘float’
Creating a generic function for ‘diag’ from package ‘base’ in package ‘float’
Creating a generic function for ‘nrow’ from package ‘base’ in package ‘float’
Creating a generic function for ‘ncol’ from package ‘base’ in package ‘float’
Creating a generic function for ‘NROW’ from package ‘base’ in package ‘float’
Creating a generic function for ‘NCOL’ from package ‘base’ in package ‘float’
Creating a generic function for ‘eigen’ from package ‘base’ in package ‘float’
Creating a generic function for ‘which.min’ from package ‘base’ in package ‘float’
Creating a generic function for ‘which.max’ from package ‘base’ in package ‘float’
Creating a generic function for ‘rownames’ from package ‘base’ in package ‘float’
Creating a generic function for ‘rownames<-’ from package ‘base’ in package ‘float’
Creating a generic function for ‘colnames’ from package ‘base’ in package ‘float’
Creating a generic function for ‘colnames<-’ from package ‘base’ in package ‘float’
Creating a generic function for ‘norm’ from package ‘base’ in package ‘float’
Creating a generic function for ‘qr.Q’ from package ‘base’ in package ‘float’
Creating a generic function for ‘qr.R’ from package ‘base’ in package ‘float’
Creating a generic function for ‘qr.qy’ from package ‘base’ in package ‘float’
Creating a generic function for ‘qr.qty’ from package ‘base’ in package ‘float’
Creating a generic function for ‘La.svd’ from package ‘base’ in package ‘float’
Creating a generic function for ‘svd’ from ‘base’ in package ‘float’
    (from the saved implicit definition)
Creating a generic function for ‘svd’ from package ‘base’ in package ‘float’
Creating a generic function for ‘sweep’ from package ‘base’ in package ‘float’
** help
*** installing help indices
** building package indices
** installing vignettes
   ‘float.Rnw’ 
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for ‘float’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/home/kdreval/R/x86_64-pc-linux-gnu-library/4.1/00LOCK-float/00new/float/libs/float.so':
  /home/kdreval/R/x86_64-pc-linux-gnu-library/4.1/00LOCK-float/00new/float/libs/float.so: undefined symbol: iparam2stage_
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/home/kdreval/R/x86_64-pc-linux-gnu-library/4.1/float’
Warning in install.packages :
  installation of package ‘float’ had non-zero exit status

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

And the session info:

> sessionInfo()
R version 4.1.3 (2022-03-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: CentOS Linux 7 (Core)

Matrix products: default
BLAS:   /gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/lib/libRblas.so
LAPACK: /gsc/software/linux-x86_64-centos7/R-4.1.3/lib64/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             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.1.3 tools_4.1.3  

I've seen in other issues that for older R versions installation of Rcpp helped to resolve the issue, but was not the solution in my case. Any help will be greatly appreciated.

shashankcheema commented 2 years ago

Hi, We are experiencing the same issue.

Error: package or namespace load failed for 'float' in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/opt/microsoft/ropen/4.0.2/lib64/R/library/00LOCK-float/00new/float/libs/float.so':
  /opt/microsoft/ropen/4.0.2/lib64/R/library/00LOCK-float/00new/float/libs/float.so: undefined symbol: sormqr_
Error: loading failed
Execution halted
ERROR: loading failed
* removing '/opt/microsoft/ropen/4.0.2/lib64/R/library/float'
mohitmatta commented 2 years ago

@david-cortes Can you have a look once you get a chance?

david-cortes commented 2 years ago

@mohitmatta I'm not the package maintainer and not very familiar with the code and logic, so you'd have to ask @wrathematics. That being said, it looks like an easy workaround would be to install openblas beforehand.

mohitmatta commented 2 years ago

Hi @wrathematics , could you please help here , i tried to install float after installing ropenblas but it did not resolve the issue.

Kdreval commented 2 years ago

I have tried installing the ropenblas too, but it did not resolve the error as well - returning the same error log and message. Note that I am working on a server and do not have root privileges.

grpiccoli commented 1 year ago

Hi I'm experiencing the same issue and also tried installing ropenblas and Rcpp but the installation still fails, thanks

wrathematics commented 1 year ago

I'm sorry I haven't responded earlier. My gmail filters were apparently broken. I only just now got an email from @grpiccoli's message just now.

That's a standard BLAS function, so I'm not sure why it's missing. I'll try to take a look tonight.

wrathematics commented 1 year ago

I believe @Kdreval's issue is fixed, although the package should find and link with a system blas if available. You may need to set LDFLAGS though. If you can give me more information about which BLAS library you want to use I might be able to help.

@shashankcheema Your problem is different. It can't find single precision LAPACK symbols. I think your RTools may be out of date based on a conversation I had with CRAN about this a while ago, but I'm not sure. I don't use Windows.

For ropenblas users: I'm not familiar with the package. It sounds like it downloads and compiles OpenBLAS, but from a quick glance I don't see where it puts the library files on the system. I can configure test for it if it exports functions that tell me the install paths.

grpiccoli commented 1 year ago

Hi Thank you @wrathematics for your prompt reply

I was just using the wrong library versions. I was able to fix the issue by using the following package versions: module load OpenMPI/4.1.3-GCC-11.3.0 module load ScaLAPACK/2.1.0-gompi-2022a module load OpenBLAS/0.3.20-GCC-11.3.0

module load GCC/11.3.0 this one is already loaded but make sure you are using this or older as compilation failed for me with older versions of GCC

export RMPI_TYPE=OPENMPI export MPI_ROOT=/opt/nesi/CS400_centos7_bdw/OpenMPI/4.1.3-GCC-11.3.0

install.packages('ropenblas') and finally install.packages('float')

Thanks

Kdreval commented 1 year ago

Thank you @wrathematics , I handled the issue from my side. I have asked the admins of our system to install openblas-devel on one of our servers and this allowed me to install the float. I believe this issue can now be closed. Thanks!

Thomas-Lemm commented 1 year ago

Hello @wrathematics,

I have experienced the same problem on opensuse and found that the method in question "iparam2stage" is not part of the lapack library provided by the float installation package (as of version float_0.3.0). In fact, "iparam2stage" is listed as external function in file "ilas.f", it's however nowhere defined. Consequently dynamically loading the file results in the error above.

Maybe the internally provided lapack library needs to be amended or all references to "iparam2stage" deleted. As by the other users, my problem was resolved by installing the openblas packages that came with the distribution, thus not making use of the float package provided lapack library.

I hope this helps,

Kind regards

Thomas Lemm