Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
Impala 4.0.0
-
None
-
ghx-label-12
Description
With support for ARM added to upstream Impala, it would be useful to be able to build the ARM native toolchain from an x86 machine. This would allow it to be built and uploaded to s3 using the same infrastructure that currently builds the x86 binaries. Having the ARM binaries in s3 opens up possibilities to incorporate an ARM build into GVO.
QEMU has the ability to emulate ARM on an x86 machine, and it is surprisingly simple to get an ARM docker container running on x86. This article provides some depth:
https://ownyourbits.com/2018/06/27/running-and-building-arm-docker-containers-in-x86/
The basic story is that the steps are:
- Install qemu-user/qemu-user-static (which installs appropriate hooks in the kernel)
- Make qemu-aarch64-static available in the context for building the docker container
- In the Dockerfile, copy qemu-aarch64-static into /usr/bin
For example, here is the start of the ubuntu1804 Dockerfile:
FROM arm64v8/ubuntu:18.04 COPY qemu-aarch64-static /usr/bin/qemu-aarch64-static # The rest of the dockerfile
Attachments
Issue Links
- is related to
-
IMPALA-10264 Add ability to build docker images for a different Linux distribution
- Open
- relates to
-
IMPALA-12353 Support Impala on ARM
- Resolved