MCScanX

MCScanx: Multiple Collinearity Scan toolkit

MCScan is an algorithm to scan multiple genomes or subgenomes to identify putative homologous chromosomal regions, then align these regions using genes as anchors. MCScanX toolkit implements an adjusted MCScan algorithm for detection of synteny and collinearity and extends the software by incorporating 15 utility programs for display and further analyses.

Installation

MCScanX should be executed using command lines on Mac OS (via X11) or Linux systems. On Mac OS, Xcode (http://developer.apple.com/xcode/) should be installed prior to the installation of MCScanX package. On Linux systems, the Java SE Development Kit (JDK) and “libpng” should be installed before the installation of MCScanX package. To install MCScanX, unpack the package and type "make".

Tutorial for Linux systems

  1. $ cd /programinstallers/

  2. $ wget -N http://chibba.pgml.uga.edu/mcscan2/MCScanX.zip

  3. $ wget -N http://chibba.pgml.uga.edu/mcscan2/transposed/MCScanX-transposed.zip

  4. $ cd /usr/local/bin

  5. $ unzip /programinstallers/MCScanX.zip

  6. $ unzip /programinstallers/MCScanX-transposed.zip

  7. $ cd MCScanX

  8. $ make

Only if the following error occurs during make

g++ struct.cc mcscan.cc read_data.cc out_utils.cc dagchainer.cc msa.cc permutatio$

msa.cc: In function ‘void msa_main(const char*)’:

msa.cc:289:22: error: ‘chdir’ was not declared in this scope

make: *** [mcscanx] Error 1

then for each of the following files:

msa.h dissect_multiple_alignment.h detect_collinear_tandem_arrays.h

Edit them by adding #include <unistd.h> before the first line

$ for f in msa.h dissect_multiple_alignment.h detect_collinear_tandem_arrays.h ; do sed -i '1 i\#include <unistd.h>' $f ; done

  1. $ make

  2. $ cd ../MCScanX-transposed

  3. $ make

  4. Because there are two different versions of MCScanX in the two directories, nothing is installed to the default PATH


  1. There is a different version called MCScanx (note lower case x) last updated Sept. 13, 2011 (commit 3b2f1a5d0e) at https://github.com/wyp1125/MCScanx.

One nice addition to this version is that it has error checking to make sure that the input files exist!

There is some confusing documentation about bed instead of gff input, but the code has no handler for bed files it appears.

To install this version

  1. $ cd /usr/local/bin

  2. $ git clone https://github.com/wyp1125/MCScanx.git

  3. $ cd MCScanx

  4. Same problem as above fixed by

  5. $ for f in msa.h dissect_multiple_alignment.h detect_syntenic_tandem_arrays.h ; do sed -i '1 i\#include <unistd.h>' $f ; done

  6. $ make

  7. Save a bit of space

  8. $ rm .git -rf


Citation: Wang Y, Tang H, DeBarry JD, Tan X, Li J, Wang X, Lee TH, Jin H, Marler B, Guo H, Kissinger JC, Paterson AH. (2012) MCScanX: a toolkit for detection and evolutionary analysis of gene synteny and collinearity. Nucleic Acids Res, 40(7): e49.

For help please contact Dr. Yupeng Wang: wyp1125@gmail.com