davidemms / OrthoFinder

Phylogenetic orthology inference for comparative genomics
https://davidemms.github.io/
GNU General Public License v3.0
710 stars 189 forks source link

ERROR: Cannot run mmseqs | but I can use mmseqs #684

Open wuyudelan opened 2 years ago

wuyudelan commented 2 years ago

OrthoFinder version 2.5.4 installed by conda:

$ orthofinder -f rep_type_out_more_genomes_faa -M msa -S mmseqs -a 10 -o rep_type_out_more_genomes_faa_orthofinder_test

OrthoFinder version 2.5.4 Copyright (C) 2014 David Emms

2022-03-30 17:21:32 : Starting OrthoFinder 2.5.4
176 thread(s) for highly parallel tasks (BLAST searches etc.)
10 thread(s) for OrthoFinder algorithm

Checking required programs are installed
----------------------------------------

ERROR: Cannot run mmseqs
Format of make database command:
  mmseqs createdb INPUT OUTPUT.fa ; mmseqs createindex OUTPUT.fa /tmp
ERROR: Cannot run mmseqs
Format of search database command:
  mmseqs search /mmseqsDBINPUT DATABASE.fa OUTPUT.db /tmp/tmpOUTPUT  --threads 1 ; mmseqs convertalis --threads 1 /mmseqsDBINPUT DATABASE.fa OUTPUT.db OUTPUT
Please check mmseqs is installed and that the executables are in the system path

ERROR: An error occurred, ***please review the error messages*** they may contain useful information about the problem.

However, conda has installed mmseqs, I can also run it with one of the seq files.

$ mmseqs createdb rep_type_out_more_genomes_faa/Type_Tetragenococcus_solitarius_NBRC_100494_GCA_001544195.1_protein.faa ./test.fa
createdb rep_type_out_more_genomes_faa/Type_Tetragenococcus_solitarius_NBRC_100494_GCA_001544195.1_protein.faa ./test.fa

MMseqs Version:         13.45111
Database type           0
Shuffle input database  true
Createdb mode           0
Write lookup file       1
Offset of numeric ids   0
Compressed              0
Verbosity               3

Converting sequences
[2425] 0s 63ms
Time for merging to test.fa_h: 0h 0m 0s 18ms
Time for merging to test.fa: 0h 0m 0s 10ms
Database type: Aminoacid
Time for processing: 0h 0m 0s 125ms
$ mmseqs createindex test.fa /temp
createindex test.fa /temp

MMseqs Version:             13.45111
Seed substitution matrix    nucl:nucleotide.out,aa:VTML80.out
k-mer length                0
Alphabet size               nucl:5,aa:21
Compositional bias          1
Max sequence length         65535
Max results per query       300
Mask residues               1
Mask lower case residues    0
Spaced k-mers               1
Spaced k-mer pattern
Sensitivity                 7.5
k-score                     0
Check compatible            0
Search type                 0
Split database              0
Split memory limit          0
Verbosity                   3
Threads                     176
Min codons in orf           30
Max codons in length        32734
Max orf gaps                2147483647
Contig start mode           2
Contig end mode             2
Orf start mode              1
Forward frames              1,2,3
Reverse frames              1,2,3
Translation table           1
Translate orf               0
Use all table starts        false
Offset of numeric ids       0
Create lookup               0
Compressed                  0
Add orf stop                false
Overlap between sequences   0
Sequence split mode         1
Header split mode           0
Strand selection            1
Remove temporary files      false
Cannot create temporary directory /temp

Update mmseqs with conda can not fix it.

After update, MMseqs2 Version: 13.45111

zkstewart commented 2 years ago

Also encountering the same issue. mmseqs is available through my path, but OrthoFinder doesn't agree giving the error posted above.

I'm using the recent glibc release for v2.5.4.

mat43672 commented 2 years ago

Hello, I have the same issue with 2.5.4 when using the Docker container davidemms/orthofinder:2.5.4

Any update on that problem ?

Dabaixian commented 1 year ago

Hello, i also met this problem. Does anyone know how to solve this problem(灬ꈍ ꈍ灬)

davidecarlson commented 1 year ago

I'm also experiencing this issue with Orthofinder 2.5.4 and mmseqs2 14.7e284 (the latest release).

Is Orthofinder tied to a particular mmseqs2 version?

davidecarlson commented 1 year ago

Looks like this is fixed in the code, but there has not been a release that includes the fix. Cloning the repository and running the orthofinder.py script from the cloned repo solves the issue.

dadrasarmin commented 1 year ago

Hi,

I had the same problem and I tried to update to the latest version as suggested by @davidecarlson. However, that did not solved my problem. But I changed something in the config file and now I can use mmseq. I did the following:

I replaced tmp in lines 58 and 59 of scripts_of/config.json with ./tmp

The good thing is that, I can run Orthofinder with mmseq. The bad thing is that I have to remove the tmp folder manually afterwards. I am using a server and I noticed the problem is permissions of tmp folder.