Bandage
Bandage copied to clipboard
Bandage can't find BLAST although it's installed
I have NCBI BLAST installed locally on my Linux computer, but Bandage can't find it.
$ which makeblastdb
/home/es249628/bin/ncbi-blast-2.4.0+/bin/makeblastdb
$ which blastn
/home/es249628/bin/ncbi-blast-2.4.0+/bin/blastn
Everytime I click 'Build BLAST database' button in the BLAST search window of Bandage, it gives me an error message: "The program makeblastdb was not found. Please install NCBI BLAST to use this feature."
I'm using Bandage_Ubuntu_static_v0_8_1.
This stuff is tricky. I tried to make Bandage just call which makeblastdb
to see where it is, but I fear that Bandage doesn't have access to the same PATH
variable as your shell or something. That would be why you can see it with which
but Bandage can't.
I'll have to look into this more to come up with a good solution. In the mean time, a workaround may be to put your BLAST in a more standard location, like /usr/bin
or /usr/local/bin
. Let me know if that works.
@rrwick - I'm having the same issue and placing BLAST in /usr/bin or /usr/local/bin hasn't solved it for me. I've tried adding BLAST in the same folder as Bandage and changing the $PATH accordingly, but to no avail. Do you have any other suggestions?
Same issue. Used 'conda to install BLAST, thus it's in a somewhat unique location:
uaf134253:~ jpummil$ which makeblastdb /Users/jpummil/anaconda3/bin/makeblastdb
Considering a symbolic link to see if that will suffice....
Edit: soft links seem to work just fine for resolving this. I'm on a Mac, but should be the same for Linux. Example: ln -s /Users/jpummil/anaconda3/bin/makeblastdb /usr/local/bin/makeblastdb
Also had to do the same for "blastn" and "tblastn"...
+1 for all replies above.
Also, relating to @jpummil 's reply, /usr/local/bin
seems to be the "path-to-be" on Mac as the System Integrity Protection of current Mac OS X (High Sierra in my case) seems to prohibit the creation of symlinks in /usr/bin
, even when using sudo
.
This stuff is tricky. I tried to make Bandage just call
which makeblastdb
to see where it is
Hello
instead of wich
that may respond diferently given os, and or version used.
you may want to use command -v makeblastdb
instead of which
furthermore command is posix