Skip to content

Compiling on Linux

Ankith edited this page May 31, 2025 · 5 revisions

1. Install the dependencies

Debian based distros (includes Ubuntu, Mint, PopOS, Raspberry Pi OS, Kali, etc)

sudo apt-get update sudo apt-get install build-essential git sudo apt-get install libfreetype6-dev libportmidi-dev python3-dev python3-numpy sudo apt-get install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev 

Red Hat based distros (includes Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux, etc)

sudo dnf check-update sudo dnf install pkg-config gcc git sudo dnf install freetype-devel portmidi-devel python3-devel python3-numpy sudo dnf install SDL2-devel SDL2_image-devel SDL2_mixer-devel SDL2_ttf-devel

if your system has yum instead of dnf you may try replacing that in the above commands, it will probably work in the same way (but is untested by us)

Arch-based distros (includes Manjaro, etc)

sudo pacman -Syyu sudo pacman -S pkg-config base-devel git sudo pacman -S sdl2 sdl2_ttf sdl2_image sdl2_mixer portmidi python3 -m pip install numpy

2. Clone the repository

git clone https://github.com/pygame-community/pygame-ce.git cd pygame-ce

3. Build and install pygame Community Edition

python3 -m pip install .

Note some distros will not allow you to use pip to install python packages, in that case you will have to run the above command in a python venv.

General Notes

You may also check out the Advanced compilation guide (for developers) if you are getting into development or are running into issues.

Clone this wiki locally