How to Alter the NCBI blastall (both BLAST engines) to Support A Local BLAST GIF and to output the BlastOutput data structure in ASN.1 text or binary. Download the current version of the NCBI toolbox - ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/CURRENT/NCBI_C_Toolkit/ncbi_c--May_15_2009.tar.gz to a local directory. Uncompress and untar the file. Copy the blastall_diff_2009_05_15.txt file to the local directory in which the toolbox was placed, or one level above the ncbi directory which is created when the ncbi.tar file is untarred. patch -p0 < blast_changes_diff_2009_05_15.txt will modify the necessary files. NOTE: The provided makefiles are tested on Linux system -- Fedora 11. It's also been tested on Solaris and SGI. Read the notes provided by NCBI to change the system. The location of the VIBLIB includes and OTHERLIBS includes are usually the biggest problem. Copy make*.unx to the ncbi/build directory. Do the build in the following order -- make -f makeall.unx make -f makenet.unx make -f makedemo.unx The compiles may fail because they can't find the appropriate NCBI libraries. The verbose flag is set on the linker for this purpose. Just read the error message to find out what library is missing. grep the make*.unx files to find who builds that library and build it. For example, make libwhatever.a -f makewhatever.unx. In this latest version libncbiid1.a and libnetblast.a need to be built. make will stop and issue the following warning which is for libncbiid1.a: /usr/bin/ld: cannot find -lncbiid1 collect2: ld returned 1 exit status Type the following commands: make libncbiid1.a -f makenet.unx make -f makenet.unx You'll get a similar error for -lnetblast: /usr/bin/ld: cannot find -lnetblast collect2: ld returned 1 exit status make libnetblast.a -f makenet.unx make -f makenet.unx The salogif.c file has a TMP_GIF_DIR define -- "TmpGifs". You need to create this directory or change the define to where you want blast to dump the gifs files. If you decide to change the TMP_GIF_DIR define DO THIS BEFORE YOU COMPILE ANYTHING. The TmpGifs directory (or a link called TmpGifs) must reside in the directory in which you run blastall, otherwise the blast alignment gif will not be created. The debug flag (-g) is set for all the makes. That way, if blastall crashes, the exact location of the error (program and line number) is output, so you can call us and we will help you sort it out at no charge. BLAST POINTERS Try an expect (-e) value of -e 1e-10 to get a really good match.