Dear all,
I want to run MCScanX but get the following output
Reading BLAST file and pre-processing
Generating BLAST list
0 matches imported (0 discarded)
0 pairwise comparisons
0 alignments generated
I prepared the blastp file eg
ENSAPLP00000004179.1 ENSGALP00000049077.1 58.333 408 129 6 225 627 83 454 6.77e-143
ENSAPLP00000004179.1 ENSGALP00000006137.5 74.085 355 13 3 41 395 55 330 1.44e-137
ENSAPLP00000004179.1 ENSGALP00000054156.1 100.000 105 0 0 523 627 1 105 1.16e-63
and gff file eg
APKB744031.1 ENSAPLP00000005679.1 75392 88641
APKB742734.1 ENSAPLP00000011909.1 1428474 1438892
GG2 ENSGALP00000053618.1 117714320 117748433
GG1 ENSGALP00000027958.4 195007141 195013426
Any suggestions as to what I've done wrong?
Thanks!
Did you try running the example files available at MCScanX site? If the examples work correctly and your files don't, compare them to find out what you did wrong.
Thanks! I tried some example files and they didn't work so it must be a problem with my installation.
I tried to install MCScanX. Xcode is installed. I got the following error
dissect_multiple_alignment.cc:252:17: error: use of undeclared identifier 'getopt' while ((c = getopt(argc, argv, "g:c:o:")) != -1) ^ dissect_multiple_alignment.cc:257:32: error: use of undeclared identifier 'optarg' sprintf(gpath,"%s",optarg); ^ dissect_multiple_alignment.cc:261:32: error: use of undeclared identifier 'optarg' sprintf(spath,"%s",optarg); ^ dissect_multiple_alignment.cc:265:32: error: use of undeclared identifier 'optarg' sprintf(opath,"%s",optarg); ^ dissect_multiple_alignment.cc:269:17: error: use of undeclared identifier 'optopt' if (optopt!='g' || optopt!='c' || optopt!='o') ^ dissect_multiple_alignment.cc:269:32: error: use of undeclared identifier 'optopt' if (optopt!='g' || optopt!='c' || optopt!='o') ^ dissect_multiple_alignment.cc:269:47: error: use of undeclared identifier 'optopt' if (optopt!='g' || optopt!='c' || optopt!='o') ^ 7 errors generated. make: * [mcscanx] Error 1
I think I have now installed it properly (using https://ubuntuforums.org/showthread.php?t=2205151) and get
make g++ struct.cc mcscan.cc read_data.cc out_utils.cc dagchainer.cc msa.cc permutation.cc -o MCScanX g++ struct.cc mcscan_h.cc read_homology.cc out_homology.cc dagchainer.cc msa.cc permutation.cc -o MCScanX_h g++ struct.cc dup_classifier.cc read_data.cc out_utils.cc dagchainer.cc cls.cc permutation.cc -o duplicate_gene_classifier g++ dissect_multiple_alignment.cc -o downstream_analyses/dissect_multiple_alignment g++ detect_collinear_tandem_arrays.cc -o downstream_analyses/detect_collinear_tandem_arrays cd downstream_analyses/ && /Applications/Xcode.app/Contents/Developer/usr/bin/make javac -g Cubic.java javac -g bar_plotter.java javac -g branch.java javac -g circle_plotter.java javac -g dot_plotter.java javac -g dual_synteny_plotter.java javac -g family_circle_plotter.java javac -g family_tree_plotter.java javac -g family_tree_plotter_chr.java javac -g family_tree_plotter_show_length.java
However, with the test files I still get
./MCScanX ~/Desktop/test/ Reading BLAST file and pre-processing Generating BLAST list 0 matches imported (0 discarded) 0 pairwise comparisons 0 alignments generated
It could be a MacOs-specific problem. I just downloaded and compiled MCScanX, and run it on one example:
Output:
I use Debian. You could try to find a linux machine, or open an issue on github.