satijalab / seurat

R toolkit for single cell genomics
http://www.satijalab.org/seurat
Other
2.31k stars 918 forks source link

Issue installing Seurat on remote R #6219

Closed mahnooratwork closed 2 years ago

mahnooratwork commented 2 years ago

I am trying to install Seurat remotely from terminal, however the installation in unsuccessful. The error I get is that installation of several dependent packages had a non-zero status (including RcppEigen, rgeos, sctransform, SeuratObject, and Spectra). I tried installing these packages separately but was unsuccessful. I would appreciate any help in troubleshooting this issue.

#I tried different ways to install packages including:
install.packages("Seurat") and
install_github("satijalab/seurat")

This is the error I get:

─  removing ‘/tmp/RtmplEkrok/Rinst214291ceb8212/Seurat’
         -----------------------------------
   ERROR: package installation failed
Error: Failed to install 'Seurat' from GitHub:
  ! System command 'R' failed
In addition: Warning messages:
1: In i.p(...) :
  installation of package ‘RcppEigen’ had non-zero exit status
2: In i.p(...) : installation of package ‘irlba’ had non-zero exit status
3: In i.p(...) : installation of package ‘rgeos’ had non-zero exit status
4: In i.p(...) :
  installation of package ‘sctransform’ had non-zero exit status
5: In i.p(...) :
  installation of package ‘RSpectra’ had non-zero exit status
6: In i.p(...) :
  installation of package ‘SeuratObject’ had non-zero exit status

sessionInfo()
R version 4.0.2 (2020-06-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: CentOS Linux 7 (Core)

Matrix products: default
BLAS/LAPACK: /cvmfs/soft.computecanada.ca/easybuild/software/2017/Core/imkl/2018.3.222/compilers_and_libraries_2018.3.222/linux/mkl/lib/intel64_lin/libmkl_gf_lp64.so

locale:
 [1] LC_CTYPE=en_CA.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_CA.UTF-8        LC_COLLATE=en_CA.UTF-8    
 [5] LC_MONETARY=en_CA.UTF-8    LC_MESSAGES=en_CA.UTF-8   
 [7] LC_PAPER=en_CA.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] devtools_2.4.4 usethis_2.1.6 

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.9        magrittr_2.0.3    pkgload_1.3.0     xtable_1.8-4     
 [5] R6_2.5.1          rlang_1.0.4       fastmap_1.1.0     urlchecker_1.0.1 
 [9] stringr_1.4.0     tools_4.0.2       pkgbuild_1.3.1    sessioninfo_1.2.2
[13] miniUI_0.1.1.1    cli_3.3.0         withr_2.5.0       remotes_2.4.2    
[17] htmltools_0.5.3   ellipsis_0.3.2    rprojroot_2.0.3   digest_0.6.29    
[21] lifecycle_1.0.1   crayon_1.5.1      processx_3.7.0    shiny_1.7.2      
[25] purrr_0.3.4       callr_3.7.1       later_1.3.0       htmlwidgets_1.5.4
[29] profvis_0.3.7     fs_1.5.2          promises_1.2.0.1  ps_1.7.1         
[33] curl_4.3.2        memoise_2.0.1     glue_1.6.2        cachem_1.0.6     
[37] mime_0.12         stringi_1.7.8     compiler_4.0.2    prettyunits_1.1.1
[41] httpuv_1.6.5   ````
WesDe commented 2 years ago

Hi,

Not a dev from Seurat but can you explain what "remotely from a terminal" means ? Are you trying to install it on a server ? The error explains the issue, you may need to manually install the dependencies such as RcppEigen before installing Seurat. An easy way to install Seurat without much concerns about dependencies is to use a conda environment.

Best,

mahnooratwork commented 2 years ago

Hello,

I mean that I ssh into a remote server and access R from the command line. I have tried manually installing rgeos and sctransform but got the same error. Below is the output I got when I tried RcppEigen:

`

install_github("RcppCore/RcppEigen") Downloading GitHub repo RcppCore/RcppEigen@HEAD checking for file ‘/tmp/RtmpBinP6U/remotes346df5d489022/RcppCore-RcppEigen-97✔ checking for file ‘/tmp/RtmpBinP6U/remotes346df5d489022/RcppCore-RcppEigen-97e7b7f/DESCRIPTION’ (808ms) ─ preparing ‘RcppEigen’: ✔ checking DESCRIPTION meta-information ... ─ cleaning src ─ running ‘cleanup’ ─ checking for LF line-endings in source and make files and shell scripts ─ checking for empty or unneeded directories (569ms) ─ building ‘RcppEigen_0.3.3.9.2.tar.gz’ Warning: file 'RcppEigen/cleanup' did not have execute permissions: corrected Warning: invalid uid value replaced by that for user 'nobody' Warning: invalid gid value replaced by that for user 'nobody' Installing package into ‘/gpfs/fs1/home/a/alim/mhamid/R/x86_64-pc-linux-gnu-library/4.0’ (as ‘lib’ is unspecified) ERROR: failed to lock directory ‘/gpfs/fs1/home/a/alim/mhamid/R/x86_64-pc-linux-gnu-library/4.0’ for modifying Try removing ‘/gpfs/fs1/home/a/alim/mhamid/R/x86_64-pc-linux-gnu-library/4.0/00LOCK-RcppEigen’ Warning message: In i.p(...) : installation of package ‘/tmp/RtmpBinP6U/file346df128d2460/RcppEigen_0.3.3.9.2.tar.gz’ had non-zero exit status

`

mahnooratwork commented 2 years ago

I resolved the issue by using options(timeout = 1200) Seems the packages above were taking a bit longer to load and the process would time out.