Hello,
I have a problem. Running R on version 3.6.1, and BiocManager::version() is 3.8. The following command:
> BiocManager::install()
Gives:
Error: Bioconductor version '3.8' requires R version '3.5'; see
https://bioconductor.org/install
What can I do?
Notably, I have 2 versions of R on my linux system, one is general, from the cluser, and one is local. In addition, there are 2 different library paths, the local one and the general. BiocManager is installed for both R versions, in the two different directories. So maybe it's loading the BiocManager from the older R version. How can I make it load BiocManager from the newer R version?
The following variable are set to the local directory of libraries:
R_LIBS_USER /cs/icore/ekushele/R/lib/R/library
R_LIBS /cs/icore/ekushele/R/bin/R
My own setup is similar to yours, with different versions of R installed and with only base & recommended packages in the default library, and with different paths for each version of R + Bioconductor I use. I launch different versions of R / Bioconductor with shell aliases
The aliases add the version-specific library path
A similar approach is available on Windows or using visual icons. There is some discussion in the 'Managing multiple versions' section of the BiocManager vignette,
browseVignettes("BiocManager")
.The vignette section 'How it works – details for advanced trouble-shooting' can also be useful for understanding what's going wrong with your installation -- in an existing installation, when you say
BiocManager looks for a package BiocVersion, and the version of the BiocVersion package is what determines the version of Bioconductor. The rationale for this indirection is explained in the section mentioned above. Suppose one has an installation where
BiocManager::version()
returns "3.9". Sayingwill update the BiocVersion package to the one corresponding to Bioconductor version 3.10. So in your case it's likely that you have a 'surprising' version of the BiocVersion package, rather than of the BiocManager package, in your library.
Of course, if you're using Bioconductor version "3.10" on R-3.6 and try to update to
BiocManager::install(version="3.11")
R will complain that you can't do that -- you need to be using a different version of R...Thank you! Working!