Could you please post the details working with SSE2NEON.h? Thanks.
Lately I've tried compiling the latest version of bwa on github in CentOS 7.2 on ppc64 but I get stuck on an x86_64 dependency (emmintrin.h). I found that this header file is specific to SSE2 instructions on x86 machines.
Roughly 2 years ago I was able to compile bwa on my PowerMac G5 so I'm not sure what changed since then that made bwa require x86_64.
3 answers
It doesn't compile for AArch64 either, but can be made to run by replacing 'emmintrin.h' with another header file 'SSE2NEON.h' (https://github.com/jratcliff63367/sse2neon/blob/master/SSE2NEON.h).
Perhaps you can try to disable SSE2, but it might not be enough. In the thread linked above I wrote that it solved building on non-AMD64 platforms, but the problem came back some time between version 0.6.2 and 0.7.5a.
Sorry I'm not too familiar with using options with gcc. How exactly would I use the "-D_NO_SSE2" argument?
UPDATE:
I found a workaround with from a pull request waiting to get merged. https://github.com/lh3/bwa/pull/71#issuecomment-232170671
The issue appears to be related to the klib dependency for their Smith-Waterman algorithm implementation.
Log in to answer this question.
This is probably something worth asking on the bwa mailing list, possibly combined w/ tagging this report with 'bwa'
Tagging lh3
Ah yes, didn't realize this pings someone :)