# Illegal Instruction on Pi Zero with Racket 9.1

**URL:** https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144
**Category:** General
**Created:** [March 13, 2026, 9:41pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144 "2026-03-13T21:41:36Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![nickmain](https://avatars.discourse-cdn.com/v4/letter/n/e68b1a/32.png) [@nickmain](https://racket.discourse.group/u/nickmain)
#### Post date: [March 13, 2026, 9:41pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/1 "2026-03-13T21:41:36Z")

</div>

Has anyone had success running the "Linux (Arm32/ARMv6)" version of 9.1 on a Raspberry Pi Zero W?

I am seeing "illegal instruction", which implies that the binary isn't really compiled for ARMv6.

Follow up: both 'file' and 'readelf' indicate it is "ARM", so I'm not sure why it won't run.

---

<div class="post-metadata">

### Author: ![spdegabrielle](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/spdegabrielle/32/95_2.png) [@spdegabrielle](https://racket.discourse.group/u/spdegabrielle)
#### Post date: [March 14, 2026, 10:07pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/3 "2026-03-14T22:07:59Z")

</div>

Sorry to be slow to respond.

I'll admit I have not run Racket on raspberry pi for a while.

I think you used [https://download.racket-lang.org/installers/9.1/racket-9.1-arm-linux-buster-cs.sh](https://download.racket-lang.org/installers/9.1/racket-9.1-arm-linux-buster-cs.sh) to install - the default on \<[download.racket-lang.org](http://download.racket-lang.org)\>.

[https://download.racket-lang.org/releases/9.1/](https://download.racket-lang.org/releases/9.1/) asserts that [https://download.racket-lang.org/releases/9.1/installers/racket-9.1-arm-linux-buster-cs.sh](https://download.racket-lang.org/releases/9.1/installers/racket-9.1-arm-linux-buster-cs.sh) is built on Raspbian, and I am pretty sure they are the same installer.

It might be worth trying building from source using [Source + built packages](https://download.racket-lang.org/releases/9.1/installers/racket-9.1-src-builtpkgs.tgz) (available at \<[https://download.racket-lang.org/releases/9.1/](https://download.racket-lang.org/releases/9.1/)\>), to see if you get the same issue?

Kind regards,  
Stephen

PS Happy Pi day everybody.

---

<div class="post-metadata">

### Author: ![nickmain](https://avatars.discourse-cdn.com/v4/letter/n/e68b1a/32.png) [@nickmain](https://racket.discourse.group/u/nickmain)
#### Post date: [March 14, 2026, 11:49pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/4 "2026-03-14T23:49:08Z")

</div>

Thank you for the reply.

The Pi Zero only has 512MB and a single core, so I'm not sure it would be worth trying to build from source.

I did manage to install v8.16 from the Pi repository. It runs so slowly, even for hello-world, that I'm going to stick with Chez for now.

---

<div class="post-metadata">

### Author: ![soegaard](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/soegaard/32/19_2.png) [@soegaard](https://racket.discourse.group/u/soegaard)
#### Post date: [March 15, 2026, 7:16am UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/5 "2026-03-15T07:16:49Z")

</div>

If even Hello World is slow, maybe the `raco setup` wasn't run in the install?  
That step compiles everything.

Also, wrt to compiling from source, if you add some swap space, it should be possible to compile.

---

<div class="post-metadata">

### Author: ![mflatt](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/mflatt/32/6_2.png) [@mflatt](https://racket.discourse.group/u/mflatt)
#### Post date: [March 19, 2026, 1:02pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/6 "2026-03-19T13:02:00Z")

</div>

> [@nickmain](#):
>
> I am seeing "illegal instruction", which implies that the binary isn't really compiled for ARMv6.

Ah, right. The tools we were using generated ARMv7, instead.

I've corrected the build configuration for the next release. The most recent snapshots used the corrected configuration, so the downloads from [https://snapshot.racket-lang.org/](https://snapshot.racket-lang.org/) should now really be ARMv6.

---

<div class="post-metadata">

### Author: ![nickmain](https://avatars.discourse-cdn.com/v4/letter/n/e68b1a/32.png) [@nickmain](https://racket.discourse.group/u/nickmain)
#### Post date: [March 19, 2026, 5:29pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/7 "2026-03-19T17:29:55Z")

</div>

Thank you - that worked!

---

<div class="post-metadata">

### Author: ![nickmain](https://avatars.discourse-cdn.com/v4/letter/n/e68b1a/32.png) [@nickmain](https://racket.discourse.group/u/nickmain)
#### Post date: [March 19, 2026, 5:51pm UTC](https://racket.discourse.group/t/illegal-instruction-on-pi-zero-with-racket-9-1/4144/8 "2026-03-19T17:51:08Z")

</div>

Thank you for the prod!

I did manage to build racket minimal from source.  
It took hours and failed in the middle, requiring whole-program-optimization to be disabled in order to eventually succeed.
