marbl / metAMOS

A metagenomic and isolate assembly and analysis pipeline built with AMOS
http://marbl.github.io/metAMOS
Other
93 stars 45 forks source link

Postprocess fails running statistics.pl #217

Closed izaakm closed 9 years ago

izaakm commented 9 years ago

I got the following error when running ./run_pipeline_test.sh:

During postprocess, the following command failed with return code 2:

>> perl -I /home/[username]/lib/metAMOS-1.5rc3/AMOS/Linux-x86_64/lib /home/[username]/bin/metAMOS-1.5rc3/Utilities/perl/statistics.pl /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/proba.scf.fa > /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/asmstats.out

[*****************************************************************

*************************ERROR***********************************

During postprocess, the following command failed with return code 2:

>> perl -I /home/[username]/lib/metAMOS-1.5rc3/AMOS/Linux-x86_64/lib /home/[username]/bin/metAMOS-1.5rc3/Utilities/perl/statistics.pl /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/proba.scf.fa > /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/asmstats.out

*************************DETAILS***********************************

Last 10 commands run before the error (/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Logs/COMMANDS.log)

|2015-06-05 10:21:55| ln /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/abundance.krona.html /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/Abundance.html

|2015-06-05 10:21:55| touch /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/ref.name

|2015-06-05 10:21:55| mv /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Preprocess/out/*.fastqc /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html

|2015-06-05 10:21:55| unlink /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.in.clusters

|2015-06-05 10:21:55| ln /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Propagate/in/proba.clusters /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.in.clusters

|2015-06-05 10:21:55| unlink /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.out.clusters

|2015-06-05 10:21:55| ln /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Propagate/out/proba.clusters /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.out.clusters

|2015-06-05 10:21:56| unlink /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/FunctionalAnnotation.html

|2015-06-05 10:21:56| ln /home/[username]/bin/metAMOS-1.5rc3/Test/test1/FunctionalAnnotation/out/ec.krona.html /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/FunctionalAnnotation.html

|2015-06-05 10:21:56| perl -I /home/[username]/lib/metAMOS-1.5rc3/AMOS/Linux-x86_64/lib /home/[username]/bin/metAMOS-1.5rc3/Utilities/perl/statistics.pl /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/proba.scf.fa > /home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/asmstats.out

Last 10 lines of output (/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Logs/POSTPROCESS.log)

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/class.classified’: No such file or directory

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/Annotate.html’: No such file or directory

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/Abundance.html’: No such file or directory

mv: cannot stat ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Preprocess/out/*.fastqc’: No such file or directory

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.in.clusters’: No such file or directory

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/propagate.out.clusters’: No such file or directory

unlink: cannot unlink ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/Postprocess/out/html/FunctionalAnnotation.html’: No such file or directory

ln: accessing ‘/home/[username]/bin/metAMOS-1.5rc3/Test/test1/FunctionalAnnotation/out/ec.krona.html’: No such file or directory

Can't locate AMOS/ParseFasta.pm in @INC (@INC contains: /home/[username]/lib/metAMOS-1.5rc3/AMOS/Linux-x86_64/lib /home/[username]/bin/metAMOS-1.5rc3/src/phylosift/lib/ /home/[username]/perl5/lib/perl5/x86_64-linux-thread-multi /home/[username]/perl5/lib/perl5 /usr/lib/perl5/site_perl/5.16.2/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.16.2 /usr/lib/perl5/vendor_perl/5.16.2/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.16.2 /usr/lib/perl5/5.16.2/x86_64-linux-thread-multi /usr/lib/perl5/5.16.2 /usr/lib/perl5/site_perl/5.16.2/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.16.2 /usr/lib/perl5/site_perl .) at /home/[username]/bin/metAMOS-1.5rc3/Utilities/perl/statistics.pl line 5.

BEGIN failed--compilation aborted at /home/[username]/bin/metAMOS-1.5rc3/Utilities/perl/statistics.pl line 5.

Please veryify input data and restart MetAMOS. If the problem persists please contact the MetAMOS development team.

*************************ERROR***********************************

I was able to get "run_pipeline_test.sh" to run without errors:

  1. The perl command (in the error, above) is looking for "/home/[username]/lib/metAMOS-1.5rc3/AMOS/Linux-x86_64/lib", but "/home/[username]/lib/" doesn't exist on my system. I created a symlink to the metAMOS directory in "/home/[username]/lib/".

    $ cd 
    $ mkdir lib
    $ cd lib/
    $ ln -s /home/[username]/bin/metAMOS-1.5rc3 .
    $ ls 
  2. I also had to download "ParseFasta.pm" from the AMOS page and put that in my "/home/[username]/bin/metAMOS-1.5rc3/AMOS" directory. (After installation, the only thing in my "AMOS" directory was the "Linux-x86_64" directory.)
skoren commented 9 years ago

The lib directory for perl is based on the binary path with a global replace of bin to lib. Since your metAMOS was in a bin subdirectory, it got incorrectly changed to lib. We didn't see it before because no one has had bin in their metAMOS path before.

I committed a fix to the replace.