Question: Error in installation of scran
0
9 months ago by
Momo0
Momo0 wrote:

I had an error in installing scran under the environment written below.
Environment:
R version 3.5.1 (2018-07-02)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux ComputeNode release 6.10 (Santiago)
Bioconductor 3.8

I couldn't install the scran with the command below, shown in the scran manual page("https://bioconductor.org/packages/release/bioc/html/scran.html").

>BiocManager::install("scran", version = "3.8")
>library("scran")

1:  ‘IRanges’ から ‘concatenateObjects’ へエクスポートされるメソッドに対応する関数がありません
2:  ‘XVector’ から ‘concatenateObjects’ へエクスポートされるメソッドに対応する関数がありません
3:  ‘GenomicRanges’ から ‘concatenateObjects’ へエクスポートされるメソッドに対応する関数がありません



For error message 1-3, they arose from the change of namespace in the package S4Vectors. The BiocManager command above installed S4Vectors0.20.1. But concatenateObjects() was renamed bindROWS() in S4Vectors 0.19.4. Some packages of installed version(IRanges, XVectors, GenomicRanges) was using concatenateObject(), so it caused error in intallation of scran.
Installed version by the BiocManager Command is below:

> packageVersion("IRanges")
[1] ‘2.14.10’
> packageVersion("XVector")
[1] ‘0.20.0’
> packageVersion("GenomicRanges")
[1] ‘1.32.3’


To install scran, I updated S4Vectors, IRanges, XVectors, GenomicRanges from GitHub. The commands used is below.

>library("githubinstall")
>githubinstall("IRanges")
>githubinstall("S4Vectors")
>githubinstall("GenomicRanges")
>library("devtools")
>install_github("Bioconductor/XVector")


Installed version of the packages from GitHub was below:

> packageVersion("IRanges")
[1] ‘2.17.4’
> packageVersion("S4Vectors")
[1] ‘0.21.9’
> packageVersion("GenomicRanges")
[1] ‘1.35.1’
> packageVersion("XVector")
[1] ‘0.23.0’

modified 9 months ago by Aaron Lun25k • written 9 months ago by Momo0
Answer: Error in installation of scran
2
9 months ago by
Aaron Lun25k
Cambridge, United Kingdom
Aaron Lun25k wrote:

You shouldn't have to install the Github versions of any packages - and in fact, this will mess up your installation, as you're mixing Bioc-devel and Bioc-release package versions. You'll probably get all sorts of warnings if you were to run BiocManager::valid().

Part of the problem lies in the fact that some of your previously installed versions were one release out of date. For example, your IRanges was 2.14.10 but the current release is 2.16.0, and obviously downstream packages depending on updates in the latter would fail with the former. One place to start would be to get all of your packages from the same version of Bioconductor (follow the instructions in BiocManager::valid()).

If that still doesn't work, the other explanation is that the various S4 method tables are built during installation, and thus all of the packages defining methods need to be reinstalled when the generics are changed in some upstream package. See for example:

https://support.bioconductor.org/p/101813/#102033