igraph
2.1.4
This works well with R CMD INSTALL --no-configure igraph
using Makevars
in 2.0.2 and adding -Ivendor/io/parsers
, but we still have
Error: package or namespace load failed for ‘igraph' in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/rds/project/rds-4o5vpvAowP0/software/R/00LOCK-igraph/00new/igraph/libs/igraph.so':
/rds/project/rds-4o5vpvAowP0/software/R/00LOCK-igraph/00new/igraph/libs/igraph.so: undefined symbol: mpz_sizeinbase
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/rds/project/rds-4o5vpvAowP0/software/R/igraph'
* restoring previous ‘/rds/project/rds-4o5vpvAowP0/software/R/igraph'
Somehow we use the default modules,
Currently Loaded Modulefiles:
1) rhel8/slurm 4) cuda/11.4 7) ucx/1.15.0
2) singularity/current 5) vgl/2.5.1/64 8) intel-oneapi-mpi/2021.6.0/intel/guxuvcpm
3) rhel8/global 6) intel-oneapi-compilers/2022.1.0/gcc/b6zld2mz 9) rhel8/default-icl
followed by module load ceuadmin/R
and try again to get it compiled and loaded.
2.0.2
We succeded with this,
module load gcc/6
module load ceuadmin/glpk/4.57
Rscript -e 'download.packages("igraph",".")'
tar xvfz igraph_2.0.2.tar.gz
cd igraph
./configure
# mv configure configure.sav
# modify src/Makevars
# export LD_LIBRARY_PATH=/usr/local/software/master/gcc/9/lib64:$LD_LIBRARY_PATH
R CMD INSTALL --no-configure igraph
Unfortunately, unlike stated in the package, manual work is still needed, involving adding intoMakevars
-I/usr/local/Cluster-Apps/ceuadmin/glpk/4.57/include
and -L/usr/local/Cluster-Apps/ceuadmin/glpk/4.57/lib
.
# Generated from Makevars.in, do not edit by hand
include sources.mk
PKG_CFLAGS=$(C_VISIBILITY)
PKG_CXXFLAGS=$(CXX_VISIBILITY)
PKG_FFLAGS=$(F_VISIBILITY)
PKG_CPPFLAGS=-DUSING_R -I. -Ivendor -Ivendor/cigraph/src -Ivendor/cigraph/include -Ivendor/cigraph/vendor -Ivendor/mini-gmp -I/rds/user/jhz22/hpc-work/include/libxml2 -I/usr/local/Cluster-Apps/ceuadmin/glpk/4.57/include\
-DNDEBUG -DNTIMER -DNPRINT -DIGRAPH_THREAD_LOCAL= \
-DPRPACK_IGRAPH_SUPPORT \
-DHAVE_GFORTRAN=1 \
-D_GNU_SOURCE=1
PKG_LIBS = -lglpk -L/rds/user/jhz22/hpc-work/lib:/usr/local/Cluster-Apps/ceuadmin/glpk/4.57/lib -lxml2 -L/usr/local/software/archive/linux-scientific7-x86_64/gcc-9/zlib-1.2.11-lnf7bswyozdhprbg7jo6n5ha5633ftj2/lib -lz -llzma -lm -ldl $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
OBJECTS=${SOURCES}
The installation of tidygraph
1.3.1, Seurat
5.0.2 (we used gcc/7) follows suite.