On 2012-4-19 7:09, Buchbinder, Barry (NIH/NIAID) [E] wrote:
De-Jian,
Hello. It's me again.
I suspect that just writing wrapper scripts would be faster than playing
with RPMs and/or trying to compile blast yourself.
As I understand it, blast programs are all command-line. I think
that the easiest thing would be to just use the Windows version
supplied by NCBI and write wrapper scripts that will convert cygwin's
POSIX paths to Windows paths. You might have to experiment to see if
you also need to convert file formats from \n to \r\n line endings.
See
$ man cygpath
$ man dos2unix
$ man unix2dos
Luc Hermitte's cyg-wrapper.sh might be all you need.
http://hermitte.free.fr/cygwin/#Win32
Example (using vim):
http://vim.wikia.com/wiki/Running_the_win32-version_of_Vim_from_cygwin
I've never used cyg-wrapper.sh, so this suggestion is "theoretical" and
not based on my personal experience.
Related:
http://www.ncbi.nlm.nih.gov/books/NBK1762/
http://www.ncbi.nlm.nih.gov/books/NBK52637/
Good luck,
- Barry
Disclaimer: Statements made herein are not made on behalf of NIAID.
Disclaimer: Please see http://cygwin.com/ml/cygwin/2012-04/msg00247.html
for other disclaimers and statements concerning the limited
reliability of my advice on this topic.
Hi,Barry. Thank you for your suggestion. Actually I am using the windows
version of BLAST these days. The only inconvenience is that windows
version of blast does not recognize the linux-like paths, as mentioned
in my previous replies.
Now, it is solved after reading your reply. I was inspired by the notion
of "convert cygwin's POSIX paths to Windows paths". I tried to convert
the path into windows path using "cygpath -w" and it works smoothly. An
example command line is as below:
blastall -p blastn -i nt.fas -d $(cygpath -w genome.db) -o test.out -m 8
I have modified the PATH variable so as to the blast programs could be
automatically identified. genome.db is a soft link to the target
database under the working directory. blastall can not interpret the
soft link; but after translating the path using $(cygpath -w genome.db),
it works perfectly.
Furthermore, there is in fact no need to create the linux-style soft
link. I added a variable DB to store the windows-style path of the
database and this makes a more simple solution.
DB="D:\Blast\blast-2.2.13\db\genome\genome.db"
blastall -p blastn -i nt.fas -d $DB -o test.out -m 8
Up to now, the problem is solved. Thanks to all that participated in the
discussion. I should have make it clear that I just want to use the
blast program under Cygwin. The efforts were diverted into two
directions. One was to compile the program from source code. Many people
contributed their ideas and the discussion deepened my understanding of
Cygwin. The other was to use the windows version. The problem of
different styles of paths was settled today. Thanks to all for your help.
Best regards,
DJ
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple