edgeR package fails to load after install
1
0
Entering edit mode
jenny.russ • 0
@jennyruss-18107
Last seen 6.1 years ago

 

Hi,

I have problems installing edgeR on R-3.5.1. I get the following error at the end of the install:

** testing if installed package can be loaded
Error: package or namespace load failed for ‘edgeR’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/opt/R-3.5.1/library/edgeR/libs/edgeR.so':
  /opt/R-3.5.1/library/edgeR/libs/edgeR.so: undefined symbol: _ZNSt13runtime_errorC1EPKc
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/opt/R-3.5.1/library/edgeR’
 

Do you have an idea what the problem is and how I can solve this. I cannot install the package 'scater' without edgeR.

Thanks, Jenny

edger install error • 3.5k views
ADD COMMENT
0
Entering edit mode

Hi, I met the same error. Do you find any good solution to this?

Thanks

ADD REPLY
0
Entering edit mode

It would probably help to include the full transcript of the attempt to install edgeR, and to include the output of sessionInfo().

ADD REPLY
0
Entering edit mode

Hi, Thanks. Following is the code and error information.

R CMD INSTALL edgeR_3.24.0.tar.gz

Error: package or namespace load failed for ‘edgeR’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/home/R/R_3_5_1/lib64/R/library/edgeR/libs/edgeR.so':
  /home/R/R_3_5_1/lib64/R/library/edgeR/libs/edgeR.so: undefined symbol: _ZNSt13runtime_errorC1EPKc
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/home/R/R_3_5_1/lib64/R/library/edgeR’

 

> sessionInfo()

R version 3.5.1 (2018-07-02)

Platform: x86_64-pc-linux-gnu (64-bit)

Running under: Red Hat Enterprise Linux Server release 6.6 (Santiago)

Matrix products: default

BLAS: /home/R/R_3_5_1/lib64/R/lib/libRblas.so

LAPACK: /home/R/R_3_5_1/lib64/R/lib/libRlapack.so

 

locale:

[1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              

[3] 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   

[7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 

[9] 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     

 

other attached packages:

[1] BiocInstaller_1.32.1

 

loaded via a namespace (and not attached):

[1] BiocManager_1.30.2 compiler_3.5.1     tools_3.5.1       

ADD REPLY
0
Entering edit mode

I realize there is a character limit, but it is the compile and link rather than load part of the installation that is likely to be useful. For me I have

$ bioc-3.8 CMD INSTALL edgeR_3.24.0.tar.gz
* installing to library ‘/Users/ma38727/Library/R/3.5/Bioc/3.8’
* installing *source* package ‘edgeR’ ...
** libs
g++ -std=gnu++11 -I"/Users/ma38727/bin/R-3-5-branch/include" -DNDEBUG  -I"/Users/ma38727/Library/R/3.5/Bioc/3.8/Rcpp/include" -I/usr/local/include   -fPIC  -g -O0 -c R_add_prior_count.cpp -o R_add_prior_count.o
g++ -std=gnu++11 -I"/Users/ma38727/bin/R-3-5-branch/include" -DNDEBUG  -I"/Users/ma38727/Library/R/3.5/Bioc/3.8/Rcpp/include" -I/usr/local/include   -fPIC  -g -O0 -c R_ave_log_cpm.cpp -o R_ave_log_cpm.o
...
g++ -std=gnu++11 -I"/Users/ma38727/bin/R-3-5-branch/include" -DNDEBUG  -I"/Users/ma38727/Library/R/3.5/Bioc/3.8/Rcpp/include" -I/usr/local/include   -fPIC  -g -O0 -c objects.cpp -o objects.o
g++ -std=gnu++11 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/usr/local/lib -o edgeR.so R_add_prior_count.o R_ave_log_cpm.o R_calculate_cpm.o R_check_poisson_bound.o R_compute_apl.o R_compute_nbdev.o R_exact_test_by_deviance.o R_fit_levenberg.o R_fit_one_group.o R_get_one_way_fitted.o R_initialize_levenberg.o R_loess_by_col.o R_maximize_interpolant.o R_process_hairpin_reads.o R_simple_good_turing.o add_prior.o adj_coxreid.o fmm_spline.o glm_levenberg.o glm_one_group.o init.o interpolator.o nbdev.o objects.o -L/Users/ma38727/bin/R-3-5-branch/lib -lRlapack -L/Users/ma38727/bin/R-3-5-branch/lib -lRblas -L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin16/6.3.0 -L/usr/local/gfortran/lib -lgfortran -lquadmath -lm -Wl,-framework -Wl,CoreFoundation
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
installing to /Users/ma38727/Library/R/3.5/Bioc/3.8/edgeR/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (edgeR)

 

ADD REPLY
0
Entering edit mode

Hi Martin, Thanks very much! However, the command "R CMD INSTALL edgeR_3.24.0.tar.gz" still report error in my end.

ADD REPLY
0
Entering edit mode

I know, but it reports an error after printing out a bunch of stuff...it does not fail after printing only the line that you show... or does it?

I think it would also be valuable to indicate how you retrieved the .tar.gz file.

ADD REPLY
0
Entering edit mode

It seems like your C++ standard library is... out of date? Perhaps missing altogether? Your linker is not able to find the std::runtime_error constructor, and that's been in the C++ standard since 2003 (at least). This probably represents an issue with your build environment - I would guess that there's some ABI incompatibilities between the system's C++ library and whatever GCC you're using. Probably worth talking to your sysadmin about this.

ADD REPLY
0
Entering edit mode

Hi Aaron, Thank you. I will contact sysadmin about this.

ADD REPLY
0
Entering edit mode

Hi Aaron. I have checked the version of C++ standard library as showing in following:

strings /usr/lib64/libstdc++.so.6 | grep LIBCXX

GLIBCXX_3.4

GLIBCXX_3.4.1

GLIBCXX_3.4.2

GLIBCXX_3.4.3

GLIBCXX_3.4.4

GLIBCXX_3.4.5

GLIBCXX_3.4.6

GLIBCXX_3.4.7

GLIBCXX_3.4.8

GLIBCXX_3.4.9

GLIBCXX_3.4.10

GLIBCXX_3.4.11

GLIBCXX_3.4.12

GLIBCXX_3.4.13

GLIBCXX_FORCE_NEW

GLIBCXX_DEBUG_MESSAGE_LENGTH

 

GCC version is 6.2.1. I am not sure where is the incompatibilities between them.

ADD REPLY
0
Entering edit mode

This page lists the symbol versions corresponding to the GCC version. The numbers you're showing correspond to GCC version 4.4.2 or earlier - quite old. This is probably the cause of ABI incompatibilities with object files created with GCC version 5.1.0 or later, read this.

ADD REPLY
1
Entering edit mode
Aaron Lun ★ 28k
@alun
Last seen 1 hour ago
The city by the bay

This is a very unusual error that I have not seen before. I would say that there is a problem with your GCC set-up - maybe because it's not linking to the correct C++ standard library? - so you'll have to talk to your sysadmin or whoever set up your build system.

ADD COMMENT

Login before adding your answer.

Traffic: 373 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6