zavolanlab / MIRZAG

MIRZA-G - Pipeline and model for miRNA target prediction
5 stars 3 forks source link

Unable to get/compile MIRZA binary #2

Closed sujaikumar closed 6 years ago

sujaikumar commented 6 years ago

(Sorry - I posted this as a comment earlier in the wrong place)

Thanks for writing this tool - looks like exactly what we want! :-)

However, I was unable to install MIRZA (needed for MIRZA-G) I didn't see any binary inside http://www.clipz.unibas.ch/mirzag/mirza.tar.gz And the source code inside mirza.tar.gz is not compiling correctly on a modern linux box (standard Ubuntu installation with g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609

On typing make I get an error message g++: error: unrecognized command line option ‘--export-dynamic’ So I tried removing --export-dynamic and tried changing it to -export-dynamic. In both cases, it compiled correctly, but when I try to run ./MIRZA, I get this error:

terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_M_construct null not valid
Aborted (core dumped)

So am stuck now. Am guessing it's a string declaration somewhere? But don't know enough c/c++ to debug.

If you could provide a statically compiled linux binary for MIRZA I'd be very grateful!

And I apologise for the hurry but I'm visiting another lab in Mexico and we would really like to get this working so we can move on with the project!

Many thanks in advance, Sujai

guma44 commented 6 years ago

Hi, Sure. We have a static binary. I will check and let you know as fast as possible.

guma44 commented 6 years ago

I have talked to @fgypas and it should be enough to comment out the --export-dynamic line in the makefile. Can you try that?

guma44 commented 6 years ago

And actually, the "core dumped" error is OK. You can try your setup by running:

./launch_MIRZA file_samples/miRNA_expression file_samples/miRNA_sequence file_samples/mRNA_sequence noupdate
sujaikumar commented 6 years ago

Thanks to @fgypas and you for getting back to me so quickly.

I just tried

./launch_MIRZA file_samples/miRNA_expression file_samples/miRNA_sequence file_samples/mRNA_sequence noupdate

and first it said -bash: /scratch/skumar/mirza/bin/MIRZA: No such file or directory so I looked inside the .sh file and realised it needed the MIRZA binary in $WORKPATH/bin . I did that, but now when the shell script gets to this line:

$WORKPATH/bin/MIRZA $WORKPATH/exp $MRNAFILE $WORKPATH/seq $MRNALENGTH $UPDATEPRIORS > $OUTPUT

I get this error:

Reading Fasta File: file_samples/mRNA_sequence
Number of read sequences = 2988
__________________________________________________
Reading Fasta File: /scratch/skumar/mirza/seq
Number of read sequences = 467
__________________________________________________
Reading miRNA expression File: /scratch/skumar/mirza/exp
__________________________________________________
Initializing the coefficients and energy arrays...
Initializing the coefficients and energy arrays...Done
Segmentation fault (core dumped)

Can you help me figure out what's happening? Many thanks in advance

fgypas commented 6 years ago

Hi

Can you try the following?

Comment the line: # EXP =--export-dynamic

Run the installation: ./install.sh

And the run:

./launch_MIRZA file_samples/miRNA_expression file_samples/miRNA_sequence file_samples/mRNA_sequence noupdate

The output should look like the following:

Now parsing input files..
Starting computations with mRNA fragmants of length 51
Reading Fasta File: file_samples/mRNA_sequence
Number of read sequences = 2988
__________________________________________________
Reading Fasta File: /mirza/seq
Number of read sequences = 467
__________________________________________________
Reading miRNA expression File: /mirza/exp
__________________________________________________
Initializing the coefficients and energy arrays...
Initializing the coefficients and energy arrays...Done

Processing completed.
Now parsing..
Parsing completed.
Now creating html files..

All done!
These files were created:

/mirza/results/hybrids
/mirza/results/canonical
/mirza/results/non_canonical
/mirza/results/best_results.html
/mirza/results/miRNA_Activity

Did you compile it before just with make?

sujaikumar commented 6 years ago

Ah! I missed the ./install.sh step. My fault! I had previously tried running make all and moving the MIRZA binary to ./bin/

Following your steps, everything seems to be working fine now and ran exactly as you said it would :-) Thank you so much! 👍