Skip to content

Installing Citrus

Robert Bruggner edited this page Mar 1, 2017 · 16 revisions

Citrus is distributed as an R package. A shiny-based web GUI may be used to configure and run Citrus.

See the Getting Started page for details on how to setup your analysis and the Examples page for an example walk-through using synthetic data.

Table of Contents

Installation

Software Prerequisites

  • Version 2.15 or later of R. At this time, Version 3.0.3 is recommended, as many required packages are already compiled correctly for this version of R.
  • You will need to install a platform-specific compiler:
    • Linux users will most likely already have a complier installed.
    • Windows users will need to install the Rtools package.
    • For Mac OS X, install XCode. In order to use the compiler supplied by any version of XCode, the command line compile tools must also be installed . To install them after installing XCode:
      • Launch XCode.
      • Choose "Preferences..." under the "XCode" Menu.
      • Select the "Downloads" section and then click on the "Components" bar.
      • Click the "Install" button for the Command Line Tools option.
      • NOTE: If Command Line Tools are not available in XCode, try running the following command in the terminal:
 shell> xcode-select --install

Citrus Package Prerequisites Installation

First, start R and install packages required by citrus.

 R> install.packages("glmnet") 
 R> install.packages("pamr") 
 R> install.packages("ggplot2")
 R> install.packages("survival")
 R> source("http://bioconductor.org/biocLite.R")
 R> biocLite("flowCore")
 R> biocLite("impute")
 R> install.packages("samr")

You may also install optional packages that enable additional features or the web gui.

 R> install.packages("shiny") # For GUI
 R> install.packages("brew")  # For GUI

Standard citrus installation (No OpenMP Support)

Start R and use the devtools package to install the citrus package.

 R> install.packages("devtools")
 R> library("devtools")
 R> install_github("nolanlab/Rclusterpp")
 R> install_github('nolanlab/citrus')

Now you can load the Citrus package and start the GUI

 R> library("citrus")
 R> citrus.launchUI()

Note that the compilers (LLVM+clang) supplied with Xcode5 do not support OpenMP and thus, you will not be able to take advantage of the multithreaded performance of Rclusterpp. To compile Rclusterpp with OpenMP / Multithreading support, see the section below.

Citrus Installation on Mac OS X using MacPorts and g++4.8 (With OpenMP Support)

To enable Citrus (and required package Rclusterpp) to take advantage of OpenMP multithreaded support, we must first install a compiler that supports OpenMP. To do this:

Download and install MacPorts

Open a terminal and from the command line, install gcc version 4.8:

 shell> sudo port install gcc48

Confirm gcc48 is active:

 shell> g++-mp-4.8 -v

Now tell R to use our newly installed version of g++. Open a terminal and use a text editor to create the ~/.R/Makevars file:

 shell> mkdir ~/.R
 shell> nano ~/.R/Makevars

Add the following lines to the text file:

 CXX=/opt/local/bin/g++-mp-4.8 -arch x86_64
 CC=/opt/local/bin/gcc-mp-4.8
 SHLIB_OPENMP_CXXFLAGS= -fopenmp

If a line setting the CXX value already exists, replace it with the line above. Write changes and exit the editor. If you're using nano, type control-o, hit "enter", and then control-x.

Start R and recompile the Rclusterpp and its dependancies using the newly installed compiler:

 R> install.packages("Matrix")
 R> install.packages(c("Rcpp","RcppEigen"),type="source")

Use the devtools package to install citrus.

 R> library("devtools")
 R> install_github('nolanlab/Rclusterpp')
 R> install_github('nolanlab/citrus')

Now you can load the Citrus package and start the GUI

 R> library("citrus")
 R> citrus.launchUI()

To tell R to ignore the newly installed version of GCC, comment out the lines added to your ~/.R/Makevars file.

Configuring parameters for analysis

Details on how to configure Citrus for your analysis may be found on the Getting Started page.

You can’t perform that action at this time.