# Have a try Julia v1.5.1 for arm32bit

**URL:** https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558
**Category:** Tooling
**Tags:** announcement
**Created:** [August 26, 2020, 7:58am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558 "2020-08-26T07:58:30Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [August 26, 2020, 7:58am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/1 "2020-08-26T07:58:30Z")

</div>

Similar to [Have a try Julia v1.4.2 for arm32bit](https://discourse.julialang.org/t/have-a-try-julia-v1-4-2-for-arm32bit/40284), have a try Julia v1.5.1 for arm32bit 🎉

 ![Screen Shot 2020-08-26 at 16.34.44](https://global.discourse-cdn.com/julialang/original/3X/1/3/13640f8e3bfac554b143c590338b2841976279b4.png)

# How to install

- Bring RPI4(Maybe RPI3, RPI2 is O.K.) from your room and install Raspberry Pi OS lite to your Raspberry Pi.
  - See [https://www.raspberrypi.org/downloads/](https://www.raspberrypi.org/downloads/) to learn more.

- Install Docker via the following proceduce:
  - See [The easy way to set up Docker on a Raspberry Pi](https://www.freecodecamp.org/news/the-easy-way-to-set-up-docker-on-a-raspberry-pi-7d24ced073ef/) to learn more.

```bash
yourmainPC $ ssh pi@raspberrypi.local # Assume You are going to login to your Pi via SSH
pi@raspberrypi $ curl -fsSL get.docker.com -o get-docker.sh && sh get-docker.sh
pi@raspberrypi $ sudo gpasswd -a $USER docker # if you like to skip `sudo`
pi@raspberrypi $ exit
yourmainPC $ ssh pi@raspberrypi.local # login again
pi@raspberrypi $ JL_VERSION=v1.5.1
pi@raspberrypi $ IMAGE_NAME=terasakisatoshi/jlcross:rpi3-${JL_VERSION}
pi@raspberrypi $ CONTAINER_NAME=jltmp_${JL_VERSION}
pi@raspberrypi $ docker run --name ${CONTAINER_NAME} $IMAGE_NAME /bin/bash
pi@raspberrypi $ docker cp ${CONTAINER_NAME}:/home/pi/julia-${JL_VERSION} .
pi@raspberrypi $ docker rm ${CONTAINER_NAME}
pi@raspberrypi $ ls 
julia-v1.5.1 # <---- this is it
pi@raspberrypi $ cd julia-v1.5.1/bin
pi@raspberrypi $ ./julia # tada!!!

```

Enjoy Julia on your Raspberry Pi !!!

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [August 26, 2020, 7:36pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/2 "2020-08-26T19:36:04Z")

</div>

Also enjoy Julia on your Raspberry Pi Zero !!!

```bash
# set IMAGE_NAME as
$ IMAGE_NAME=terasakisatoshi/jlcross:rpizero-${JL_VERSION}

```

 ![image](https://global.discourse-cdn.com/julialang/original/3X/6/d/6dc8e5db598d60a66396ecd2b6e6dcb082cd6ddd.png)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [October 7, 2020, 8:38am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/3 "2020-10-07T08:38:31Z")

</div>

Hi, there Enjoy Julia v1.5.2.

 ![Screen Shot 2020-10-07 at 17.18.34](https://global.discourse-cdn.com/julialang/original/3X/5/4/54470e35658c05219361920f2a008549a8e5c871.png)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [October 7, 2020, 10:31am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/4 "2020-10-07T10:31:04Z")

</div>

Also RPi3 and RPi4

 ![image](https://global.discourse-cdn.com/julialang/original/3X/9/7/97b5ec24ef71b42f3ffcd65c9c035b78bd7f446b.png)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [November 11, 2020, 2:16am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/5 "2020-11-11T02:16:07Z")

</div>

Enjoy Julia 1.5.3 on your RPIZero.

 ![image](https://global.discourse-cdn.com/julialang/original/3X/4/2/420ae4e1668ce000f454c3726b9ab4c1f80fbd41.jpeg)

---

<div class="post-metadata">

### Author: ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)
#### Post date: [November 11, 2020, 8:21am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/6 "2020-11-11T08:21:53Z")

</div>

omg amazing! and thank you.

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [November 13, 2020, 12:05pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/7 "2020-11-13T12:05:25Z")

</div>

Try Julia 1.5.3 on your Raspberry Pi 3/4

 ![](https://global.discourse-cdn.com/julialang/original/3X/2/a/2a8773f82e7e6c9fee97796a3fbb0b73f2e1dc53.png)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [November 14, 2020, 12:21am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/8 "2020-11-14T00:21:07Z")

</div>

You can build Julia1.6-DEV by yourself (without using Docker).

[https://gist.github.com/terasakisatoshi/8a95eb8b676a29ad3f5fe4a717ff3254#gistcomment-3527002](https://gist.github.com/terasakisatoshi/8a95eb8b676a29ad3f5fe4a717ff3254#gistcomment-3527002)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [November 20, 2020, 1:49am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/9 "2020-11-20T01:49:42Z")

</div>

I’ve made a HelloWorld application that utilizes C++ resources. It runs not only standard platform(e.g. 64bit Windows, Linux, Mac) but also RaspberryPi with `armv7l`.

Checkout [LibHello.jl](https://github.com/terasakisatoshi/LibHello.jl) or run the following commands.

```nohighlight
git clone https://github.com/terasakisatoshi/LibHello.jl.git
cd LibHello.jl
julia --project=@. -e 'using Pkg; Pkg.add(url="https://github.com/terasakisatoshi/libhello_jll.jl.git", rev="libhello-v0.1.2+0")'
julia --project=@. -e 'using Pkg; Pkg.add("CxxWrap")'
# Should install libcxxwrap_julia_jll v0.8.2 if you try to run on your RaspberryPi with armv7l,
# otherwise you can pass it since CxxWrap installs libcxxwrap_julia_jll v0.8.0
julia --project=@. -e 'using Pkg; Pkg.add(PackageSpec(name="libcxxwrap_julia_jll", rev="b5edd5de8ab5b80e8f945bf1829048ef7a4feee0"))'
# test out
julia --project=@. -e 'using Pkg; Pkg.test()'

```

---

<div class="post-metadata">

### Author: ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)
#### Post date: [November 29, 2020, 4:44pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/10 "2020-11-29T16:44:11Z")

</div>

I tried the docker-based installation of Julia v1.5.3 on a Raspberry Pi Zero W 1.1, and it works but shows an error message on startup:

```julia
$ julia
WARNING: Error during initialization of module LinearAlgebra:
ErrorException("could not load symbol "openblas_get_config":
/home/pi/apps/julia-v1.5.3/bin/../lib/julia/libblas.so: undefined symbol: openblas_get_config")

```

So far everything seems to work, but I imagine I’ll eventually run into trouble with whatever is wrong with BLAS. I’m going to try building 1.6-DEV just to see what happens.

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [November 30, 2020, 9:10am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/11 "2020-11-30T09:10:35Z")

</div>

If you try it for RPI Zero, you need install dependencies via apt-get install…

```julia
sudo apt-get update && \
    sudo apt-get install -y build-essential libatomic1 python gfortran perl wget m4 cmake pkg-config \
    libopenblas-dev \
    liblapack-dev \
    libgmp3-dev \
    libmpfr-dev

```

See

[https://github.com/Julia-Embedded/jlcross#raspberry-pi-zero](https://github.com/Julia-Embedded/jlcross#raspberry-pi-zero)

and

[https://github.com/Julia-Embedded/jlcross/blob/master/rpizero/Dockerfile-v1.5.3#L27-L31](https://github.com/Julia-Embedded/jlcross/blob/master/rpizero/Dockerfile-v1.5.3#L27-L31)

If you set `USE_xxx_=0` and building procedure is passed, please let me know.

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [December 1, 2020, 3:26am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/12 "2020-12-01T03:26:00Z")

</div>

[https://twitter.com/mathsorcerer/status/1333408134203797507?s=21](https://twitter.com/mathsorcerer/status/1333408134203797507?s=21)

---

<div class="post-metadata">

### Author: ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)
#### Post date: [December 1, 2020, 7:52am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/13 "2020-12-01T07:52:26Z")

</div>

How?! wow…

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [December 1, 2020, 10:52am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/14 "2020-12-01T10:52:27Z")

</div>

Hi, @yakir12

I’ve just installed Plots.jl via `julia> using Pkg; Pkg.add("Plots")`

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [December 1, 2020, 11:44am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/15 "2020-12-01T11:44:05Z")

</div>

Good news! [this example of Dash.jl](https://github.com/plotly/Dash.jl/issues/50#issue-674077393) runs on RaspberryPi4  
Also if Pluto.jl team will accept [this PR](https://github.com/fonsp/Pluto.jl/pull/740), it will also run.

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [February 23, 2021, 7:45am UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/16 "2021-02-23T07:45:12Z")

</div>

Sorry everyone. I don’t have a lot of free time to be able to build Julia 1.6.x …

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [April 11, 2021, 12:29pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/17 "2021-04-11T12:29:49Z")

</div>

Enjoy Julia 1.5.4 for armv7l 🎉

 ![image](https://global.discourse-cdn.com/julialang/original/3X/4/6/46680bb2a59c4da6a1688a4301c3a4b27cf240ca.jpeg)

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [April 11, 2021, 2:48pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/18 "2021-04-11T14:48:34Z")

</div>

Good news, we can build julia on your RPI4 directly(=without using Docker or cross-compilation)

 ![image](https://global.discourse-cdn.com/julialang/original/3X/b/f/bfde96c9f2094b00142bb21f7fd23dc0a49fff15.png)

note: we need prepare `Make.user` as follow:

```julia
MARCH=armv7-a
LDFLAGS=-latomic

```

---

<div class="post-metadata">

### Author: ![thomarse](https://avatars.discourse-cdn.com/v4/letter/t/34f0e0/32.png) [@thomarse](https://discourse.julialang.org/u/thomarse)
#### Post date: [July 31, 2021, 12:42pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/19 "2021-07-31T12:42:10Z")

</div>

This worked great but I’m now having issues using packages in Julia:

```julia
using PortAudio
[Info: Precompiling PortAudio [80ea8bcb-4634-5cb3-8ee8-a132660d1d2d]
Invalid ARM instruction at 0xa511e054: 0xe30f1fff

signal (4): Illegal instruction
in expression starting at /home/pi/.julia/packages/FFMPEG_jll/xCSqL/src/wrappers/armv7l-linux-gnueabihf.jl:12
_GLOBAL__sub_I_motion.cpp at /home/pi/.julia/artifacts/4aa3a4154795fad4cba5fdb55d9be30840315788/lib/libx265.so (unknown line)
Allocations: 5207652 (Pool: 5207253; Big: 399); GC: 13
ERROR: LoadError: LoadError: Failed to precompile FFMPEG_jll [b22a6f82-2f65-5046-a5b2-351ab43fb4e5] to /home/pi/.julia/compiled/v1.5/FFMPEG_jll/uSD0T_djzcu.ji.
...

```

It seems like Julia is trying to use an `armv7l` version of FFMPEG\_jll. Any ideas how to fix this?

---

<div class="post-metadata">

### Author: ![thomarse](https://avatars.discourse-cdn.com/v4/letter/t/34f0e0/32.png) [@thomarse](https://discourse.julialang.org/u/thomarse)
#### Post date: [July 31, 2021, 1:07pm UTC](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558/20 "2021-07-31T13:07:19Z")

</div>

OK I’ve worked out why - there is no `armv6l` version of FFMPEG\_jll - [https://github.com/JuliaBinaryWrappers/FFMPEG\_jll.jl](https://github.com/JuliaBinaryWrappers/FFMPEG_jll.jl)

I guess there’s no way around this?

[Next page](https://discourse.julialang.org/t/have-a-try-julia-v1-5-1-for-arm32bit/45558.md?page=2)
