Difficulties with installation?

The Spectre package is designed to helps various computational tools work nicely with each other, in a single environment, design for high-dimensional cytometry/single-cell analysis. To do this, many of Spectre's functions are 'wrappers' for other packages (e.g. Spectre has functions to run FlowSOM and UMAP, but these functions use the code from the FlowSOM and UMAP R packages respectively) – ensuring the input and output parameters work in a consistent fashion, and adding modifications to tailor these packages to cytometry analysis. Because of this, Spectre requires the installation of a number of other packages. By default, many of these will be installed automatically when you install Spectre. However, this can sometimes be a problem if a necessary package attempts to be installed, but for some reason it can't be. 

To solve these issues, you can check out the common issues below, or submit an error report (or email us) to get some help!

If a package dependency is preventing the installation of Spectre

A common difficulty in installing Spectre is installing specific packages, such as the 'flowCore' dependency.  You may see an error like this during installation:

Error in library("flowCore") : there is no package called ‘flowCore’
Error: unable to load R code in package ‘Spectre’
Execution halted
ERROR: lazy loading failed for package ‘Spectre’
* removing ‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/Spectre’
Warning message:
In i.p(...) :
  installation of package ‘/var/folders/zf/7wygqzns5vx7ycttdgcc4byc0000gp/T//RtmpLaXtSj/file1023f80a7e62/Spectre_0.5.1.tar.gz’ had non-zero exit status

You can install flowCore independently by running the following code. 

if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")

Once flowCore is installed, you can try installing Spectre again.

Bulk install additional required packages

If Spectre was successfully installed, but some nominally required packages were not, you can check using the 'package.check()' function.

flowViz is required but not installed. Please install from BioConductor.
FlowSOM is required but not installed. Please install from BioConductor.

You can ask Spectre to bulk install any necessary packages using the 'package.install()' function.


Alternatively, you can install these packages one at a time, such as the bioconductor dependencies.


## Install BiocManager to download packages from Bioconductor
     if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")

## Download additional BioConductor packages
     if(!require('flowCore')) {BiocManager::install('flowCore')}
     if(!require('Biobase')) {BiocManager::install('Biobase')}
     if(!require('flowViz')) {BiocManager::install('flowViz')}
     if(!require('FlowSOM')) {BiocManager::install('FlowSOM')}

  • No labels