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

Run IQ-TREE natively in ARM64 image #212

Open
victorlin opened this issue May 28, 2024 · 1 comment
Open

Run IQ-TREE natively in ARM64 image #212

victorlin opened this issue May 28, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@victorlin
Copy link
Member

Context

Currently, IQ-TREE version 2.1.2 is used in the Docker image with a note that it requires emulation on non-amd64 hosts:

docker-base/Dockerfile

Lines 125 to 132 in 822a459

# Download IQ-TREE
# NOTE: Running this program requires support for emulation on the Docker host
# if the processor architecture is not amd64.
# TODO: Build from source to avoid emulation. Instructions: http://www.iqtree.org/doc/Compilation-Guide
WORKDIR /download/IQ-TREE
RUN curl -fsSL https://github.com/iqtree/iqtree2/releases/download/v2.1.2/iqtree-2.1.2-Linux.tar.gz \
| tar xzvpf - --no-same-owner --strip-components=1 \
&& mv bin/iqtree2 /final/bin/iqtree

Possible solutions

  1. Build IQ-TREE by ourselves. This will increase build times. I tried a bit here: 0ff5492...120bbcf
  2. Use IQ-TREE version 2.3.4 which provides prebuilt binaries for both amd64 (intel) and arm64 (arm). Do this by conditionally determining the binary based on TARGETARCH similar to how csvtk is downloaded.
@corneliusroemer
Copy link
Member

corneliusroemer commented Jul 25, 2024

Another solution, use the bioconda binaries, which have linux-aarch64 builds available:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants