Julia does not start on ARM64v8 | exec /usr/local/julia/bin/julia: exec format error

Hi there, I am using julia_pod to run Julia on kubernetes. Everything works on local minikube, but when switching to my freshly created kubernetes on ARM, I get the following error log:

exec /usr/local/julia/bin/julia: exec format error

From my best guess this is related to running on ARM. Does someone has an idea what is going on?
I adapted the julia_pod to use the official julia docker julia:v1.8-buster as its base.

don’t install Julia from your package manager. they ship broken versions of Julia.

as said, this is the official julia docker which is used.

no package manager involved

EDIT: Another thought: the package is compiled with PackageCompiler to custom sysimage. Maybe this is can cause the problem

The system image is not meant to be portable. I recommend compiling it on the target environment.

Look into the environment variable JULIA_CPU_TARGET if you want to generalize the system image between ARM microarchitectures.

1 Like

The error message means that you’re attempting to run an executable for a wrong architecture. If the problem was a different microarchitecture within the same architecture you’d get an SIGILL (signal for an illegal instruction).

file /usr/local/julia/bin/julia

should tell you what the executable is.

1 Like

linking the issue and the “answer”

I think progress was made - I myself am no longer running into this, I am compiling on the target node instead.

But I somewhere have seen an update on an issue that this could actually work by now.