plger / scDblFinder

Methods for detecting doublets in single-cell sequencing data
https://plger.github.io/scDblFinder/
GNU General Public License v3.0
153 stars 18 forks source link

Installing scDblFinder with conda not working #72

Closed dimitrisokolowskei closed 1 year ago

dimitrisokolowskei commented 1 year ago

Hi,

I am trying to install scDblFinder trought conda using:

conda install -c bioconda bioconductor-scdblfinder

However, without any sucess. The error message follows:

Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: / 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                                                                                              

UnsatisfiableError:

I also tried to use BiocManager::install("scDblFinder"), without sucess once again. Please, I would appreciate any help on this matter, since scDblFinder seems to be the state of the art software for doublet removal.

Thanks

plger commented 1 year ago

I suppose the relevant conda conflict is going to be after the UnsatisfiableError:. This is a conda problem which has little to do with the package, but if you have a problem with incompatible libraries, one solution is to create a new conda environment.

I can instead help you with your BiocManager::install error, but I'll need the actual error message, as well as the outputs of sessionInfo() and BiocManager::version(). (These should BTW always be included when posting R-related issues)

dimitrisokolowskei commented 1 year ago

Hi @plger,

Thank you for the reply. I created a new conda environment, but the UnsatisfiableError: persists. My BiocManager::install error is huge. Seeing closely, many different dependencies are missing from almost every single package required for scDblFinder. But I do not know why. For example:

ERROR: dependencies ‘limma’, ‘locfit’ are not available for package ‘edgeR’
* removing ‘/home/user/anaconda3/envs/aleatorio/lib/R/library/edgeR’
ERROR: dependency ‘beeswarm’ is not available for package ‘ggbeeswarm’
* removing ‘/home/user/anaconda3/envs/aleatorio/lib/R/library/ggbeeswarm’
ERROR: dependency ‘zlibbioc’ is not available for package ‘Rhtslib’
* removing ‘/home/user/anaconda3/envs/aleatorio/lib/R/library/Rhtslib’
ERROR: dependency ‘S4Vectors’ is not available for package ‘BiocIO’
* removing ‘/home/user/anaconda3/envs/aleatorio/lib/R/library/BiocIO’

Also, the BiocManager::version() is 3.16 and session.info() follows:

R version 4.2.3 (2023-03-15)
Platform: x86_64-conda-linux-gnu (64-bit)
Running under: Debian GNU/Linux 11 (bullseye)

Matrix products: default
BLAS/LAPACK: /home/user/anaconda3/envs/aleatorio/lib/libopenblasp-r0.3.21.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     

other attached packages:
 [1] BiocManager_1.30.20 lubridate_1.9.2     forcats_1.0.0       stringr_1.5.0       dplyr_1.1.1         purrr_1.0.1        
 [7] readr_2.1.4         tidyr_1.3.0         tibble_3.2.1        ggplot2_3.4.2       tidyverse_2.0.0     Seurat_4.3.0       
[13] SeuratObject_4.1.3  sp_1.6-0           

loaded via a namespace (and not attached):
  [1] Rtsne_0.16             colorspace_2.1-0       deldir_1.0-6           ellipsis_0.3.2         ggridges_0.5.4        
  [6] rstudioapi_0.14        spatstat.data_3.0-1    leiden_0.4.3           listenv_0.9.0          ggrepel_0.9.3         
 [11] fansi_1.0.4            codetools_0.2-19       splines_4.2.3          polyclip_1.10-4        jsonlite_1.8.4        
 [16] ica_1.0-3              cluster_2.1.4          png_0.1-8              uwot_0.1.14            shiny_1.7.4           
 [21] sctransform_0.3.5      spatstat.sparse_3.0-1  compiler_4.2.3         httr_1.4.5             Matrix_1.5-4          
 [26] fastmap_1.1.1          lazyeval_0.2.2         cli_3.6.1              later_1.3.0            htmltools_0.5.5       
 [31] tools_4.2.3            igraph_1.4.1           gtable_0.3.3           glue_1.6.2             RANN_2.6.1            
 [36] reshape2_1.4.4         tinytex_0.44           Rcpp_1.0.10            scattermore_0.8        vctrs_0.6.1           
 [41] spatstat.explore_3.1-0 nlme_3.1-162           progressr_0.13.0       lmtest_0.9-40          spatstat.random_3.1-4 
 [46] xfun_0.38              globals_0.16.2         timechange_0.2.0       mime_0.12              miniUI_0.1.1.1        
 [51] lifecycle_1.0.3        irlba_2.3.5.1          goftest_1.2-3          future_1.32.0          MASS_7.3-58.3         
 [56] zoo_1.8-11             scales_1.2.1           hms_1.1.3              promises_1.2.0.1       spatstat.utils_3.0-2  
 [61] parallel_4.2.3         RColorBrewer_1.1-3     reticulate_1.26        pbapply_1.7-0          gridExtra_2.3         
 [66] stringi_1.7.12         rlang_1.1.0            pkgconfig_2.0.3        matrixStats_0.63.0     lattice_0.21-8        
 [71] ROCR_1.0-11            tensor_1.5             patchwork_1.1.2        htmlwidgets_1.6.2      cowplot_1.1.1         
 [76] tidyselect_1.2.0       parallelly_1.35.0      RcppAnnoy_0.0.20       plyr_1.8.8             magrittr_2.0.3        
 [81] R6_2.5.1               generics_0.1.3         pillar_1.9.0           withr_2.5.0            fitdistrplus_1.1-8    
 [86] survival_3.5-5         abind_1.4-5            future.apply_1.10.0    KernSmooth_2.23-20     utf8_1.2.3            
 [91] spatstat.geom_3.1-0    plotly_4.10.1          tzdb_0.3.0             grid_4.2.3             data.table_1.14.8     
 [96] digest_0.6.31          xtable_1.8-4           httpuv_1.6.9           munsell_0.5.0          viridisLite_0.4.1 
plger commented 1 year ago

When a dependency fails to install, everything downstream that requires it directly or indirectly also fails, so you have to identify the first error. Search for the first instance of "ERROR" in the long error output, and then look at the lines around there.

dimitrisokolowskei commented 1 year ago

I see, I gonna take a careful look in these errors then. Just a final question @plger. Do you have any conda environment or docker container having scDblFinder working properly? Maybe that could be easier for me. Anyway, if not, there's no problem at all.

Thanks

plger commented 1 year ago

https://github.com/plger/scDblFinder/blob/master/Dockerfile (or plger/scdblfinder:latest on dockerhub) is the one used for the automated testing.

dimitrisokolowskei commented 1 year ago

Thank you @plger, I appreciate your help