satijalab / seurat

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

Issues installing an older version of Seurat #9169

Open rachelxrachel opened 4 months ago

rachelxrachel commented 4 months ago

Hi, I'm on a Mac and am trying to install Seurat, which I have used before and never had these issues. I am trying to use Seurat 4.0.2, using this code:

remotes::install_version("Seurat", "4.0.2")

But, I am getting issues getting the SeuratObject component:

Installing 1 packages: SeuratObject Warning: dependency ‘Matrix’ is not available trying URL 'https://cran.rstudio.com/src/contrib/SeuratObject_5.0.2.tar.gz' Content type 'application/x-gzip' length 749780 bytes (732 KB)

I do have Matrix installed already (version 1.3.4, and someone I work with has this exact version that works with the exact version of Seurat I'm trying to download). It says it's trying to load "SeuratObject_5.0.2.tar.gz" and I think this could be the issue, because 5.0.2 would have it go with Seurat v5, so I'm not sure why an older version of SeuratObject is not loading when I try to install an older version of Seurat.

The end of my error looks like this: ERROR: lazy loading failed for package ‘SeuratObject’

Is there a way to specify the exact version of SeuratObject that I want? Or how else would I go about fixing this, thanks!

samuel-marsh commented 4 months ago

Hi,

Not member of dev team but hopefully can be helpful. So when specifying that version as you are only the version of Seurat is controlled not its dependencies. Hence the issue with Seurat Object. The reason you are likely having trouble installing new SeuratObject likely stems from fact that current CRAN version of Matrix is only compatible with R4.4+.

You can see all prior published versions of CRAN packages by clicking on package archive link on CRAN page for that package. You can then download older versions if needed.

Here is the page for Matrix: https://cran.r-project.org/src/contrib/Archive/Matrix/

If you download Matrix 1.6-5 file and then run

install.packages("~/Downloads/Matrix_1.6-5.tar.gz", type = "source", repos = NULL)

The other package spatstat.core was archived so you can do the same thing and install from archive.

Once you do those two things you should be fine to install Seurat using command you posted above.

Best, Sam

rachelxrachel commented 4 months ago

Thanks! I've gotten Matrix downloaded as well as a v4 of SeuratObject. I am still having a problem trying to get Seurat installed. I'm getting "Error: object 'integral' not found whilst loading namespace 'spatstat.core'"

I have installed spatstat.core from the archive already, so I'm not sure if there is a set compatible version that must be downloaded?

samuel-marsh commented 4 months ago

So you shouldn’t need version 4 of SeuratObject. The new version should work fine with Seurat 4. If you install latest SeuratObject does that resolve the issue?

rachelxrachel commented 4 months ago

I just updated to SeuratObject 5.0.2, but I'm still getting the same error. I tried running the install of Seurat v4 two different ways:

remotes::install_version("Seurat", "4.0.2")

remotes::install_version("Seurat", "4.0.2", repos = c("https://satijalab.r-universe.dev", getOption("repos")))

But am still getting "Error: object 'integral' not found whilst loading namespace 'spatstat.core'"

I've tried versions 1.65 and 2.1.2 of spatstat.core (currently have 2.1.2 installed).

bsungwoo commented 1 month ago

@rachelxrachel Hello, I also faced the same error when installing Seurat v4.1.1 with SeuratObject v5.0.1. The problem was resolved when I manually installed all the spatstat packages using remotes::install_version() with the following versions: spatstat.geom: "3.2-1" spatstat.utils: "3.1-0" spatstat.data: "3.0-1" spatstat.random: "3.1-5" spatstat.sparse: "3.0-2" spatstat.core: "2.4-4"


sessioninfo() R version 4.3.1 (2023-06-16) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 20.04.6 LTS

Matrix products: default BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.9.0 LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.9.0

locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8
[4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] 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] SeuratObject_5.0.1 Seurat_4.1.1

loaded via a namespace (and not attached): [1] deldir_2.0-4 pbapply_1.7-2 gridExtra_2.3
[4] rlang_1.1.4 magrittr_2.0.3 RcppAnnoy_0.0.22
[7] spatstat.geom_3.2-1 matrixStats_1.4.1 ggridges_0.5.6
[10] compiler_4.3.1 mgcv_1.9-1 png_0.1-8
[13] vctrs_0.6.5 reshape2_1.4.4 stringr_1.5.1
[16] pkgconfig_2.0.3 fastmap_1.2.0 utf8_1.2.4
[19] promises_1.3.0 purrr_1.0.2 jsonlite_1.8.9
[22] goftest_1.2-3 later_1.3.2 spatstat.utils_3.1-0
[25] irlba_2.3.5.1 parallel_4.3.1 cluster_2.1.6
[28] R6_2.5.1 ica_1.0-3 stringi_1.8.4
[31] RColorBrewer_1.1-3 spatstat.data_3.0-1 reticulate_1.39.0
[34] rpart_4.1.23 parallelly_1.38.0 lmtest_0.9-40
[37] scattermore_1.2 Rcpp_1.0.13 tensor_1.5
[40] future.apply_1.11.2 zoo_1.8-12 sctransform_0.4.1
[43] httpuv_1.6.15 Matrix_1.6-4 splines_4.3.1
[46] igraph_2.0.3 tidyselect_1.2.1 abind_1.4-5
[49] spatstat.random_3.1-5 codetools_0.2-20 miniUI_0.1.1.1
[52] listenv_0.9.1 lattice_0.22-6 tibble_3.2.1
[55] plyr_1.8.9 shiny_1.9.1 ROCR_1.0-11
[58] Rtsne_0.17 future_1.34.0 survival_3.7-0
[61] polyclip_1.10-7 fitdistrplus_1.2-1 pillar_1.9.0
[64] KernSmooth_2.23-24 plotly_4.10.4 generics_0.1.3
[67] sp_2.1-4 ggplot2_3.5.1 munsell_0.5.1
[70] scales_1.3.0 globals_0.16.3 xtable_1.8-4
[73] glue_1.8.0 lazyeval_0.2.2 tools_4.3.1
[76] data.table_1.16.2 ggsignif_0.6.4 RANN_2.6.2
[79] leiden_0.4.3.1 dotCall64_1.2 cowplot_1.1.3
[82] grid_4.3.1 tidyr_1.3.1 colorspace_2.1-1
[85] nlme_3.1-166 patchwork_1.3.0 cli_3.6.3
[88] spatstat.sparse_3.0-2 spam_2.11-0 fansi_1.0.6
[91] viridisLite_0.4.2 dplyr_1.1.4 uwot_0.2.2
[94] gtable_0.3.5 EnhancedVolcano_1.18.0 spatstat.core_2.4-4
[97] digest_0.6.37 progressr_0.14.0 ggrepel_0.9.6
[100] htmlwidgets_1.6.4 farver_2.1.2 htmltools_0.5.8.1
[103] lifecycle_1.0.4 httr_1.4.7 mime_0.12
[106] MASS_7.3-60

Liang6292 commented 1 month ago

@rachelxrachel Hello, I also faced the same error when installing Seurat v4.1.1 with SeuratObject v5.0.1. The problem was resolved when I manually installed all the spatstat packages using remotes::install_version() with the following versions: spatstat.geom: "3.2-1" spatstat.utils: "3.1-0" spatstat.data: "3.0-1" spatstat.random: "3.1-5" spatstat.sparse: "3.0-2" spatstat.core: "2.4-4"

sessioninfo() R version 4.3.1 (2023-06-16) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 20.04.6 LTS

Matrix products: default BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.9.0 LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.9.0

locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 [4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 [7] LC_PAPER=en_US.UTF-8 LC_NAME=C LC_ADDRESS=C [10] 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] SeuratObject_5.0.1 Seurat_4.1.1

loaded via a namespace (and not attached): [1] deldir_2.0-4 pbapply_1.7-2 gridExtra_2.3 [4] rlang_1.1.4 magrittr_2.0.3 RcppAnnoy_0.0.22 [7] spatstat.geom_3.2-1 matrixStats_1.4.1 ggridges_0.5.6 [10] compiler_4.3.1 mgcv_1.9-1 png_0.1-8 [13] vctrs_0.6.5 reshape2_1.4.4 stringr_1.5.1 [16] pkgconfig_2.0.3 fastmap_1.2.0 utf8_1.2.4 [19] promises_1.3.0 purrr_1.0.2 jsonlite_1.8.9 [22] goftest_1.2-3 later_1.3.2 spatstat.utils_3.1-0 [25] irlba_2.3.5.1 parallel_4.3.1 cluster_2.1.6 [28] R6_2.5.1 ica_1.0-3 stringi_1.8.4 [31] RColorBrewer_1.1-3 spatstat.data_3.0-1 reticulate_1.39.0 [34] rpart_4.1.23 parallelly_1.38.0 lmtest_0.9-40 [37] scattermore_1.2 Rcpp_1.0.13 tensor_1.5 [40] future.apply_1.11.2 zoo_1.8-12 sctransform_0.4.1 [43] httpuv_1.6.15 Matrix_1.6-4 splines_4.3.1 [46] igraph_2.0.3 tidyselect_1.2.1 abind_1.4-5 [49] spatstat.random_3.1-5 codetools_0.2-20 miniUI_0.1.1.1 [52] listenv_0.9.1 lattice_0.22-6 tibble_3.2.1 [55] plyr_1.8.9 shiny_1.9.1 ROCR_1.0-11 [58] Rtsne_0.17 future_1.34.0 survival_3.7-0 [61] polyclip_1.10-7 fitdistrplus_1.2-1 pillar_1.9.0 [64] KernSmooth_2.23-24 plotly_4.10.4 generics_0.1.3 [67] sp_2.1-4 ggplot2_3.5.1 munsell_0.5.1 [70] scales_1.3.0 globals_0.16.3 xtable_1.8-4 [73] glue_1.8.0 lazyeval_0.2.2 tools_4.3.1 [76] data.table_1.16.2 ggsignif_0.6.4 RANN_2.6.2 [79] leiden_0.4.3.1 dotCall64_1.2 cowplot_1.1.3 [82] grid_4.3.1 tidyr_1.3.1 colorspace_2.1-1 [85] nlme_3.1-166 patchwork_1.3.0 cli_3.6.3 [88] spatstat.sparse_3.0-2 spam_2.11-0 fansi_1.0.6 [91] viridisLite_0.4.2 dplyr_1.1.4 uwot_0.2.2 [94] gtable_0.3.5 EnhancedVolcano_1.18.0 spatstat.core_2.4-4 [97] digest_0.6.37 progressr_0.14.0 ggrepel_0.9.6 [100] htmlwidgets_1.6.4 farver_2.1.2 htmltools_0.5.8.1 [103] lifecycle_1.0.4 httr_1.4.7 mime_0.12 [106] MASS_7.3-60

Hello, I just wanted to say that this works for me. Thank you.