Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems building on ARM based servers #475

Open
olewsaa opened this issue May 24, 2018 · 2 comments · May be fixed by #1147
Open

Problems building on ARM based servers #475

olewsaa opened this issue May 24, 2018 · 2 comments · May be fixed by #1147

Comments

@olewsaa
Copy link

olewsaa commented May 24, 2018

We have an ARM based server for bioinformatics running Ubuntu with a lot of debian-med packages.
A request for dada2 triggered the installation, but very soon run into trouble. The source code should compiler, but there are x86 specific code in the source.
The errors are missing cpuid.h etc.

g++ -march=armv8-a+crc+crypto -mcpu=cortex-a72 -c Rmain.cpp -o Rmain.o
Rmain.cpp:7:10: fatal error: cpuid.h: No such file or directory
#include <cpuid.h>

As ARM based servers are ramping up in this segment I would like to raise the issue here and ask for a fix so that it will build on ARM systems, preferable Ubuntu.

Regards,
Ole W. Saastad
University of Oslo.
olews@usit.uio.no

@benjjneb
Copy link
Owner

The issue is probably the explicit SSE2 code we added. We include a cpu check to turn off that branch of the code for cpus w/o SSE2, but it appears that part is failing on ARM due to the lack of the cpuid library: https://github.com/benjjneb/dada2/blob/master/src/Rmain.cpp#L4

Agree this is worth fixing, but this starts to get beyond my dev expertise. Anyone have suggestions on how to keep the SSE2 code branch while playing well w/ non-x86 architectures?

@terjekv
Copy link

terjekv commented Sep 28, 2020

I'm running into this problem now. I'll have to dig a bit into the code and see if we can ifdef ourselves out of the problem on __aarch64__ and keep cpuid.h around for x86_64.

@terjekv terjekv linked a pull request Sep 28, 2020 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants