Python Wheels for the Raspberry Pi

piwheels is a Python package repository providing Arm platform wheels (pre-compiled binary Python packages) specifically for the Raspberry Pi, making pip installations much faster. Packages are natively compiled on Raspberry Pi 3 and 4 hardware using the Mythic Beasts Pi cloud.

Configuration

Raspberry Pi OS includes configuration for pip to use piwheels by default, which lives at /etc/pip.conf:

[global]
extra-index-url=https://www.piwheels.org/simple

With this simple configuration change, pip should now search piwheels for built distributions of packages and use them in preference to building from source. You can test this out by creating a virtual environment and attempting to install scipy which usually involves a fairly lengthy compilation:

$ sudo apt install virtualenv python3-virtualenv -y
$ virtualenv -p /usr/bin/python3 testpip
$ source testpip/bin/activate
(testpip) $ pip install scipy
...
(testpip) $ deactivate
$ rm -rf testpip/

Support

Wheels provided support all Raspberry Pi models (as of October 2023). Our wheels are only supported under 32-bit (armhf) Raspberry Pi OS, and only for the version of Python provided by each OS release:

Raspberry Pi OS versionPython versionStatus
JessiePython 3.4
StretchPython 3.5
BusterPython 3.7
BullseyePython 3.9
BookwormPython 3.11

See each package's project page for information on available wheels, and see the FAQ for more technical details.