SEQanswers

Go Back   SEQanswers > Bioinformatics > Bioinformatics



Similar Threads
Thread Thread Starter Forum Replies Last Post
Installation of Burrows-Wheeler Alignment Tool (bwa) on Mac MMPE General 11 06-02-2015 04:56 AM
Burrows Wheeler Transform samanta General 4 10-07-2011 06:16 PM
Bowtie: Burrows Wheeler Transform Siva Bioinformatics 3 03-25-2010 08:32 AM
about burrows-wheeler transform henry Bioinformatics 9 09-05-2009 12:40 AM
Burrows-Wheeler Aligners for Colorspace? lgoff Bioinformatics 9 03-09-2009 10:44 PM

Reply
 
Thread Tools
Old 12-01-2011, 12:18 PM   #1
attilav
Junior Member
 
Location: Hungary

Join Date: Mar 2011
Posts: 7
Default installing Burrows-Wheeler Aligner (BWA) on windows

Hi all!

Can someone tell me, if it is possible to use BWA in windows, and if it is, then how can I install it?
I was told, that I should install a program called Cygwin, and use it to build BWA from the source. I've never done anything like this, so its quite possible that I'm doing it wrong, here is how I tried to do it:

I managed to get to the directory in cygwin, where the source files are, then typed ./configure . However, I got an error that there is no such file or directory. I checked the directory, and there really aren't configure files in the source (I don't know, if this is normal). So I thought okay, im gonna skip the configure part, and jump to the make part. I typed make, and got a whole lot of errors:

$ make
gcc -c -g -Wall -O2 -DHAVE_PTHREAD QSufSort.c -o QSufSort.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwt_gen.c -o bwt_gen.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD utils.c -o utils.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwt.c -o bwt.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwtio.c -o bwtio.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwtaln.c -o bwtaln.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwtgap.c -o bwtgap.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD is.c -o is.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bntseq.c -o bntseq.o
bntseq.c: In function ‘ks_getuntil’:
bntseq.c:38:1: warning: array subscript has type ‘char’
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwtmisc.c -o bwtmisc.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD bwtindex.c -o bwtindex.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD ksw.c -o ksw.o
In file included from ksw.c:29:0:
/usr/lib/gcc/i686-pc-cygwin/4.5.3/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
ksw.c:43:2: error: expected specifier-qualifier-list before ‘__m128i’
ksw.c: In function ‘ksw_qinit’:
ksw.c:55:3: error: ‘ksw_query_t’ has no member named ‘qp’
ksw.c:55:11: error: ‘__m128i’ undeclared (first use in this function)
ksw.c:55:11: note: each undeclared identifier is reported only once for each fun ction it appears in
ksw.c:55:19: error: expected expression before ‘)’ token
ksw.c:56:3: error: ‘ksw_query_t’ has no member named ‘H0’
ksw.c:56:11: error: ‘ksw_query_t’ has no member named ‘qp’
ksw.c:57:3: error: ‘ksw_query_t’ has no member named ‘H1’
ksw.c:57:11: error: ‘ksw_query_t’ has no member named ‘H0’
ksw.c:58:3: error: ‘ksw_query_t’ has no member named ‘E’
ksw.c:58:11: error: ‘ksw_query_t’ has no member named ‘H1’
ksw.c:59:3: error: ‘ksw_query_t’ has no member named ‘Hmax’
ksw.c:59:13: error: ‘ksw_query_t’ has no member named ‘E’
ksw.c:73:25: error: ‘ksw_query_t’ has no member named ‘qp’
ksw.c:82:27: error: ‘ksw_query_t’ has no member named ‘qp’
ksw.c: In function ‘ksw_sse2_16’:
ksw.c:98:2: error: ‘__m128i’ undeclared (first use in this function)
ksw.c:98:10: error: expected ‘;’ before ‘zero’
ksw.c:110:2: error: ‘zero’ undeclared (first use in this function)
ksw.c:110:2: warning: implicit declaration of function ‘_mm_set1_epi32’
ksw.c:111:2: error: ‘gapoe’ undeclared (first use in this function)
ksw.c:111:2: warning: implicit declaration of function ‘_mm_set1_epi8’
ksw.c:112:2: error: ‘gape’ undeclared (first use in this function)
ksw.c:113:2: error: ‘shift’ undeclared (first use in this function)
ksw.c:114:2: error: ‘H0’ undeclared (first use in this function)
ksw.c:114:8: error: ‘ksw_query_t’ has no member named ‘H0’
ksw.c:114:14: error: ‘H1’ undeclared (first use in this function)
ksw.c:114:20: error: ‘ksw_query_t’ has no member named ‘H1’
ksw.c:114:26: error: ‘E’ undeclared (first use in this function)
ksw.c:114:31: error: ‘ksw_query_t’ has no member named ‘E’
ksw.c:114:36: error: ‘Hmax’ undeclared (first use in this function)
ksw.c:114:44: error: ‘ksw_query_t’ has no member named ‘Hmax’
ksw.c:117:3: warning: implicit declaration of function ‘_mm_store_si128’
ksw.c:124:11: error: expected ‘;’ before ‘e’
ksw.c:125:3: error: ‘h’ undeclared (first use in this function)
ksw.c:125:3: warning: implicit declaration of function ‘_mm_load_si128’
ksw.c:126:3: warning: implicit declaration of function ‘_mm_slli_si128’
ksw.c:134:4: warning: implicit declaration of function ‘_mm_adds_epu8’
ksw.c:134:40: error: ‘S’ undeclared (first use in this function)
ksw.c:135:4: warning: implicit declaration of function ‘_mm_subs_epu8’
ksw.c:136:4: error: ‘e’ undeclared (first use in this function)
ksw.c:137:4: warning: implicit declaration of function ‘_mm_max_epu8’
ksw.c:138:24: error: ‘f’ undeclared (first use in this function)
ksw.c:139:4: error: ‘max’ undeclared (first use in this function)
ksw.c:161:5: warning: implicit declaration of function ‘_mm_movemask_epi8’
ksw.c:161:5: warning: implicit declaration of function ‘_mm_cmpeq_epi8’
ksw.c:167:3: warning: implicit declaration of function ‘_mm_srli_si128’
ksw.c:167:3: warning: implicit declaration of function ‘_mm_extract_epi16’
ksw.c: In function ‘ksw_sse2_8’:
ksw.c:208:2: error: ‘__m128i’ undeclared (first use in this function)
ksw.c:208:10: error: expected ‘;’ before ‘zero’
ksw.c:219:2: error: ‘zero’ undeclared (first use in this function)
ksw.c:220:2: error: ‘gapoe’ undeclared (first use in this function)
ksw.c:220:2: warning: implicit declaration of function ‘_mm_set1_epi16’
ksw.c:221:2: error: ‘gape’ undeclared (first use in this function)
ksw.c:222:2: error: ‘H0’ undeclared (first use in this function)
ksw.c:222:8: error: ‘ksw_query_t’ has no member named ‘H0’
ksw.c:222:14: error: ‘H1’ undeclared (first use in this function)
ksw.c:222:20: error: ‘ksw_query_t’ has no member named ‘H1’
ksw.c:222:26: error: ‘E’ undeclared (first use in this function)
ksw.c:222:31: error: ‘ksw_query_t’ has no member named ‘E’
ksw.c:222:36: error: ‘Hmax’ undeclared (first use in this function)
ksw.c:222:44: error: ‘ksw_query_t’ has no member named ‘Hmax’
ksw.c:232:11: error: expected ‘;’ before ‘e’
ksw.c:233:3: error: ‘h’ undeclared (first use in this function)
ksw.c:236:4: warning: implicit declaration of function ‘_mm_adds_epi16’
ksw.c:236:27: error: ‘S’ undeclared (first use in this function)
ksw.c:237:4: error: ‘e’ undeclared (first use in this function)
ksw.c:238:4: warning: implicit declaration of function ‘_mm_max_epi16’
ksw.c:239:25: error: ‘f’ undeclared (first use in this function)
ksw.c:240:4: error: ‘max’ undeclared (first use in this function)
ksw.c:242:4: warning: implicit declaration of function ‘_mm_subs_epu16’
ksw.c:258:5: warning: implicit declaration of function ‘_mm_cmpgt_epi16’
make: *** [ksw.o] Error 1

I would really appreciate, if someone could help me out with this.

Thanks, Attila Vikor
attilav is offline   Reply With Quote
Old 12-01-2011, 03:37 PM   #2
nilshomer
Nils Homer
 
nilshomer's Avatar
 
Location: Boston, MA, USA

Join Date: Nov 2008
Posts: 1,285
Default

Try opening the "Makefile" and changing this line:
Code:
DFLAGS=     -DHAVE_PTHREAD #-D_NO_SSE2 #-D_FILE_OFFSET_BITS=64
to this
Code:
DFLAGS=     -DHAVE_PTHREAD -D_NO_SSE2 #-D_FILE_OFFSET_BITS=64
nilshomer is offline   Reply With Quote
Old 12-01-2011, 03:40 PM   #3
skycreative
Member
 
Location: GuangXi China

Join Date: Jan 2010
Posts: 27
Default

maybe virtual machine more easy
skycreative is offline   Reply With Quote
Old 12-02-2011, 12:15 AM   #4
attilav
Junior Member
 
Location: Hungary

Join Date: Mar 2011
Posts: 7
Default

Changed the line in the makefile, and the make went through without an error!
Thank you!
attilav is offline   Reply With Quote
Old 12-02-2011, 01:29 PM   #5
RDW
Member
 
Location: London

Join Date: Oct 2008
Posts: 63
Default

Note that anything you build with Cygwin will be a 32-bit executable, even on 64-bit Windows. This greatly limits the size of the files bwa can handle. If this is an issue and you have a 64-bit system, consider dual booting to 64-bit Linux, or perhaps running it in a VM.

Edit: I don't know if anyone has built a native 64-bit Windows bwa - I had a go a while ago with mingw, but ran into problems with missing posix functions.

Last edited by RDW; 12-02-2011 at 02:10 PM.
RDW is offline   Reply With Quote
Old 12-16-2011, 07:52 AM   #6
mfursov
Junior Member
 
Location: Russia

Join Date: Dec 2009
Posts: 6
Default

A free tool: Unipro UGENE contains BWA for windows in its full package:

http://ugene.unipro.ru/
__________________
---
http://ugene.unipro.ru
mfursov is offline   Reply With Quote
Old 12-17-2011, 07:42 AM   #7
RDW
Member
 
Location: London

Join Date: Oct 2008
Posts: 63
Default

UGENE looks like a useful collection of tools, though the BWA build is still 32-bit.
RDW is offline   Reply With Quote
Old 12-26-2011, 10:28 PM   #8
mfursov
Junior Member
 
Location: Russia

Join Date: Dec 2009
Posts: 6
Default

Hope we get 64 bit version soon

Please track:
https://ugene.unipro.ru/tracker/browse/UGENE-754
__________________
---
http://ugene.unipro.ru
mfursov is offline   Reply With Quote
Old 04-22-2012, 10:36 AM   #9
xied75
Senior Member
 
Location: Oxford

Join Date: Feb 2012
Posts: 129
Default

Dear all,

Please check http://bow.codeplex.com/
Just released BWA on x64 Windows, natively compiled on Windows without using any 3dr party library.

Best,

dong
xied75 is offline   Reply With Quote
Old 10-20-2016, 01:05 PM   #10
JMU
Junior Member
 
Location: Berlin

Join Date: Oct 2016
Posts: 3
Default How can I install BWA on Windows

Hi all!

I try to install BWA on windows and the compilation of a program is the very first time for me, so I think that I did a lot of mistakes.
I installed bwa and cygwin. Following the 'make' command within the cygwin shell something happend but if I try to start bwa with the commoand 'bwa' within the cmd console I got the respond that cygwin1.dll is not installed.

The following happend after the make command:

$ make
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 utils.c -o utils.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 kthread.c -o kthread.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 kstring.c -o kstring.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 ksw.c -o ksw.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwt.c -o bwt.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bntseq.c -o bntseq.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwa.c -o bwa.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwamem.c -o bwamem.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwamem_pair.c -o bwamem_pair.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwamem_extra.c -o bwamem_extra.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 malloc_wrap.c -o malloc_wrap.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 QSufSort.c -o QSufSort.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwt_gen.c -o bwt_gen.o
bwt_gen.c: In Funktion »BWTIncBuildRelativeRank«:
bwt_gen.c:878:10: Warnung: Variable »oldInverseSa0RelativeRank« gesetzt, aber nicht verwendet [-Wunused-but-set-variable]
bgint_t oldInverseSa0RelativeRank = 0;
^
bwt_gen.c: In Funktion »BWTIncMergeBwt«:
bwt_gen.c:952:15: Warnung: Variable »bitsInWordMinusBitPerChar« gesetzt, aber nicht verwendet [-Wunused-but-set-variable]
unsigned int bitsInWordMinusBitPerChar;
^
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 rope.c -o rope.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 rle.c -o rle.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 is.c -o is.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtindex.c -o bwtindex.o
ar -csru libbwa.a utils.o kthread.o kstring.o ksw.o bwt.o bntseq.o bwa.o bwamem.o bwamem_pair.o bwamem_extra.o malloc_wrap.o QSufSort.o bwt_gen.o rope.o rle.o is.o bwtindex.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwashm.c -o bwashm.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwase.c -o bwase.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwaseqio.c -o bwaseqio.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtgap.c -o bwtgap.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtaln.c -o bwtaln.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bamlite.c -o bamlite.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwape.c -o bwape.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 kopen.c -o kopen.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 pemerge.c -o pemerge.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 maxk.c -o maxk.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtsw2_core.c -o bwtsw2_core.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtsw2_main.c -o bwtsw2_main.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtsw2_aux.c -o bwtsw2_aux.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwt_lite.c -o bwt_lite.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtsw2_chain.c -o bwtsw2_chain.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 fastmap.c -o fastmap.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwtsw2_pair.c -o bwtsw2_pair.o
gcc -c -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 main.c -o main.o
gcc -g -Wall -O2 -DHAVE_PTHREAD -D_NO_SSE2 bwashm.o bwase.o bwaseqio.o bwtgap.o bwtaln.o bamlite.o bwape.o kopen.o pemerge.o maxk.o bwtsw2_core.o bwtsw2_main.o bwtsw2_aux.o bwt_lite.o bwtsw2_chain.o fastmap.o bwtsw2_pair.o main.o -o bwa -L. -lbwa -lm -lz -lpthread

Is there any executable files available for bwa-0.7.15?

I would be really happy if somebody can help me!

Cheers, Lizzy
JMU is offline   Reply With Quote
Old 10-20-2016, 05:32 PM   #11
RDW
Member
 
Location: London

Join Date: Oct 2008
Posts: 63
Default

Where are you trying to run it from? The missing dll suggests you might be trying to use it from (e.g.) the Windows command prompt rather than the Cygwin bash shell, which complicates things a lot. After running make from Cygwin bash is there a 'bwa.exe' in your bwa source directory? If so, in bash navigate to the source directory and try:

./bwa

If this works, then you successfully built bwa, but it just isn't in your PATH (the current directory is not in your PATH by default). To see a list of directories that are in your Cygwin PATH, from bash try:

echo $PATH

You can copy bwa.exe to one of these directories and the 'bwa' command should work from the Cygwin bash in any directory.

Edit: Incidentally, things have moved on since this very old thread began! 64-bit Cygwin is now available and can build 64-bit bwa, and UGENE also has a pre-compiled 64-bit (Cygwin) build, though it's not the latest version.

Last edited by RDW; 10-20-2016 at 05:39 PM.
RDW is offline   Reply With Quote
Old 10-21-2016, 12:32 AM   #12
JMU
Junior Member
 
Location: Berlin

Join Date: Oct 2016
Posts: 3
Default

Thanks a lot, it works!

Yes, there was a bwa.exe after running the make command and I could initiate bwa by using ./bwa. I used the cygwin bash.

Thank you and best wishes from Berlin,
Lizzy
JMU is offline   Reply With Quote
Old 10-21-2016, 01:18 AM   #13
JMU
Junior Member
 
Location: Berlin

Join Date: Oct 2016
Posts: 3
Default

One more question: Why I have to use ./ in advance of the bwa command. Could you tell me what is the reason for that?

Thanks, Lizzy
JMU is offline   Reply With Quote
Reply

Tags
bwa

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT -8. The time now is 11:54 AM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Single Sign On provided by vBSSO