Cross-Compiling Julia from source for the Raspberry Pi 3b+

Hi everyone,

I was just wondering if there were any easy ways to compile Julia for aarch64. I have found JuliaBerry, which has a guide on how to locally compile Julia on the Pi itself, but this will take almost an entire day. Is there any way of cross-compiling on my main workstation (running Windows, but will likely use WSL and Debian to actually do the compilation)?

1 Like

Any particular reason for not using the pre-built binary from Download Julia?

I’ve compiled it on an 8Gb RAM Pi4 in maybe an hour or two. You do need at least 4Gb RAM now. What version are you using that it takes almost a day?

I’ve compiled Julia on many SMBC through the years without issues or particularly long compile times.

Mostly this is just part of a hobby project using a small SLURM cluster. It would be nice to have a self containing installation of julia that can be shared between all the nodes.

It’s a 3b+ with only 1GB of memory, so it’s mainly about needing a large swap file which really slows things down.

I must be missing why using the official binaries is not an option then. You don’t have to compile anything.

Also, cross-compiling Julia isn’t really feasible at the moment: you can actually cross-compile the executable, but to build the sysimage (which is by far the bottleneck of the process) you have to run it.

2 Likes

Not OP, but I need a version of julia compiled for ARMv7 arch for which there are official binaries for julia version 1.6.7, but the build process broke in the mean time and there are no binaries for latest versions.
Although I\m having trouble running 1.6.7, so maybe this question is moot anyways.

It might be best for you to start a new topic. Armv7 has Tier 3 support and is quite different than aarch64:

  • Tier 3: Julia may or may not build. If it does, it is unlikely to pass tests. Binaries may be available in some cases. When they are, they should be considered experimental. Ongoing support is dependent on community efforts.