Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing tRNA annotation #208

Closed
Linnaeus001 opened this issue Jan 8, 2024 · 8 comments
Closed

Missing tRNA annotation #208

Linnaeus001 opened this issue Jan 8, 2024 · 8 comments

Comments

@Linnaeus001
Copy link

Linnaeus001 commented Jan 8, 2024

on which platform/server? (Windows? Windows Sublinux? MacOS? Ubuntu? etc.)

Windows Sublinux

MitoZ version?

3.6

How did you install MitoZ? (e.g. Docker, Udocker, Singularity, Conda-Pack, Conda, or source code)

Conda

Did you run a test after your installation, and was the test run okay?

yes, work well

How much data (roughly) did you use for mitogenome assembly? e.g. 5Gbp?

2G

The command you used?

$ mitoz all --outprefix Stenocrobylus_festivus --threa
d_number 2 --clade Arthropoda --genetic_code 5 --fq1 17-1119_1.fq.gz --fq2 17-1119_2.fq.gz --fastq_read_length 150 --requiring_taxa Xenocatantops

Problem description

Don't see any tRNA annotated

Log messages from MitoZ (stdout and stderr, e.g., both m.log and m.err files)

mitoz.log

Anyway, I'm not sure that if error2 is related. I got some trouble when generate .png file of circos, and I solved it by installed Circos separately. Thanks a lot if you can help 谢谢

@Linnaeus001
Copy link
Author

Linnaeus001 commented Jan 8, 2024

I located mitoz/annotate/script/mitfi and read these:
Version 0.1 of MiTFi

The mitochondrial tRNA finder (MiTFi) script is a java script
using the Infernal package* and several preprocessing steps to find
mitochondrial tRNA genes. All required covariance models and a file
defining the NCBI genetic codes** are attached.

Run the script

  • You need to have the Infernal package* installed on your system.
    Please, set the cmsearch call in mitfi_config.txt (default: "cmsearch")

  • If you want to run the script on multiple cores (recommended!) you
    need to define the mpirun/orterun call in mitfi_config.txt
    (default: "orterun")

  • Run the MiTFi script:

    java -jar mitfi.jar mitogenome.fasta

  • Use -h to display all options
    java -jar mitfi.jar -h

We need your feedback!

Please, send your comments, suggestions or questions to
[email protected]

*http://infernal.janelia.org/
**ftp://ftp.ncbi.nih.gov/entrez/misc/data/gc.prt
(Explanation: http://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi)

I ran the MiTFi script but got these:
$ java -jar mitfi.jar mitogenome.fasta
Exception in thread "main" java.io.IOException: Cannot run program "./cmsearch": error=14, Bad address
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
at java.base/java.lang.Runtime.exec(Runtime.java:592)
at java.base/java.lang.Runtime.exec(Runtime.java:416)
at java.base/java.lang.Runtime.exec(Runtime.java:313)
at mitfi.Main.main(Main.java:228)
Caused by: java.io.IOException: error=14, Bad address
at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
at java.base/java.lang.ProcessImpl.(ProcessImpl.java:340)
at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:271)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
... 5 more
Is that the problem?

@Linnaeus001 Linnaeus001 changed the title Missing TRNA annotation Missing tRNA annotation Jan 8, 2024
@Linnaeus001
Copy link
Author

summary.txt
Summary file is added

@linzhi2013
Copy link
Owner

This could be due to the cmsearch.

cd /home/tanghao/anaconda3/envs/mitozEnv/lib/python3.8/site-packages/mitoz/annotate/script/mitfi
# and find the cmsearch progrm 
./detect_platform.sh 

The content of the detect_platform.sh file :

#!/bin/bash

platform="$(uname | tr '[:upper:]' '[:lower:]')"
arch="$(arch | tr '[:upper:]' '[:lower:]')"

if [[ "$platform" == "darwin" ]]; then
    if [[ "$arch" == "arm64" ]]; then
        platform="darwin_arm64"
    else
        platform="darwin_i386"
    fi
else
    platform='linux'
fi

echo "detected platform: $platform"

if [[ ! -f "cmsearch" ]]; then
    ln -s infernal-1.0.2.binaries/cmsearch.$platform cmsearch
fi

# 'realpath' is in the package 'coreutils' https://anaconda.org/conda-forge/coreutils

a=$(realpath cmsearch)
b=$(basename $a)
c=`echo $b | sed 's#cmsearch.##'`

if [[ "$platform" != "$c" ]]; then
    rm cmsearch
    ln -s infernal-1.0.2.binaries/cmsearch.$platform cmsearch
fi

If you go to mitoz/annotate/script/mitfi/infernal-1.0.2.binaries, and you will see there are two versions of the binary, Mac and Linux.

So, the thing is, you are using the Windows Sublinux system, whose platform name doesn't match either of the two.

My suggestion is:

In your terminal, try the two commands:

platform="$(uname | tr '[:upper:]' '[:lower:]')"
arch="$(arch | tr '[:upper:]' '[:lower:]')"

echo $platform
echo $arch

And tell me what the values are.

Secondly, go to mitoz/annotate/script/mitfi/infernal-1.0.2.binaries, and try to excute the binary:

./cmsearch.linux

to see if this binary works.

If cmsearch.linux works for you, modify the detect_platform.sh file, to make it link cmsearch.linux as cmsearch. Or you can do anything as you want to the detect_platform.sh file, but just make sure cmsearch file is from cmsearch.linux.

@Linnaeus001
Copy link
Author

Thanks for reply.
I tired some commands following your suggesstion:

$ platform="$(uname | tr '[:upper:]' '[:lower:]')"
$ arch="$(arch | tr '[:upper:]' '[:lower:]')"
$ echo $platform
linux
$ echo $arch
x86_64
$ cd infernal-1.0.2.binaries
$ ls
cmsearch.darwin_arm64 cmsearch.darwin_i386 cmsearch.linux
$ ./cmsearch.linux
-bash: ./cmsearch.linux: Bad address
$ ldd ./cmsearch.linux
linux-vdso.so.1 (0x00007fffcf786000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fa628210000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa627fe0000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa628309000)

I remember that I used "conda install bioconda::mitoz" form https://anaconda.org/bioconda/mitoz to get Mitoz. Does that make the problem?

@linzhi2013
Copy link
Owner

You might need to compile the cmsearch.linux manually, see the mitoz/annotate/script/mitfi/mgl_readme.txt file.

wget http://eddylab.org/software/infernal/infernal-1.0.2.tar.gz

@Linnaeus001
Copy link
Author

Got it
Commands in this file can be executed perfectly: "
If the cmsearch doesn't work for you, try to compile 'infernal-1.0.2.tar.gz' by yourself!

wget http://eddylab.org/software/infernal/infernal-1.0.2.tar.gz

tar -zxvf infernal-1.0.2.tar.gz

cd infernal-1.0.2
./configure --prefix=infernal-1.0.2.build
make

find the infernal-1.0.2/src/cmsearch binary. "
Now I got a new directory called "infernal-1.0.2" under /mitfi and I do find a cmsearch binary in it. Should I repath it in detect_platform.sh?

@linzhi2013
Copy link
Owner

linzhi2013 commented Jan 9, 2024

yes, replace your new cmsearch with the cmsearch.linux within mitoz/annotate/script/mitfi/infernal-1.0.2.binaries

@Linnaeus001
Copy link
Author

Linnaeus001 commented Jan 10, 2024

You mean save the new one? I tried to change the link in detect_platform.sh:
Replacing "ln -s infernal-1.0.2.binaries/cmsearch.$platform cmsearch" into "ln -s infernal-1.0.2/src/cmsearch cmsearch" and it work:
$ java -jar mitfi.jar mitogenome.fasta
MiTFi - mitochondrial tRNA finder v0.1
#RESULTS (cutoff evalue: 0.001)
#header start stop score evalue AC AA model strand
NC_015609.1 1 66 63.24 1.336E-12 GAU I Metazoa_I.cm +
NC_015609.1 122 190 50.92 1.381E-9 UUG Q Metazoa_Q.cm -
NC_015609.1 200 267 60.21 1.03E-10 CAU M Metazoa_M.cm +
NC_015609.1 1280 1347 49.2 1.533E-9 GCA C Metazoa_C.cm -
NC_015609.1 1356 1423 55.16 7.04E-11 UCA W Metazoa_W.cm +
NC_015609.1 1425 1491 58.99 1.45E-10 GUA Y Metazoa_Y.cm -
NC_015609.1 3028 3092 59.83 3.796E-11 UAA L2 Metazoa_L2.cm +
NC_015609.1 3777 3847 47.26 2.259E-8 CUU K Metazoa_K.cm +
NC_015609.1 3848 3915 43.03 3.352E-8 GUC D Metazoa_D.cm +
NC_015609.1 5536 5600 52.29 1.016E-9 UCC G Metazoa_G.cm +
NC_015609.1 5959 6025 51.93 2.439E-9 UGC A Metazoa_A.cm +
NC_015609.1 6026 6093 51.1 7.549E-9 UCG R Metazoa_R.cm +
NC_015609.1 6096 6162 46.81 6.621E-9 GUU N Metazoa_N.cm +
NC_015609.1 6163 6229 50.73 2.071E-8 GCU S1 Metazoa_S1.cm +
NC_015609.1 6232 6296 40.47 1.175E-7 UUC E Metazoa_E.cm +
NC_015609.1 6295 6358 59.25 8.996E-12 GAA F Metazoa_F.cm -
NC_015609.1 8091 8155 45.6 2.144E-8 GUG H Metazoa_H.cm -
NC_015609.1 9787 9850 52.34 9.688E-10 UGU T Metazoa_T.cm +
NC_015609.1 9851 9916 55.98 1.85E-10 UGG P Metazoa_P.cm -
NC_015609.1 11571 11637 49.91 3.643E-9 UGA S2 Metazoa_S2.cm +
NC_015609.1 12612 12674 51.44 1.615E-9 UAG L1 Metazoa_L2.cm -
NC_015609.1 13988 14059 52.67 6.16E-10 UAC V Metazoa_V.cm -

I try on my fastaq again and it also works. Thanks so much!
summary.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants