Skip to content

System dependencies

Ingur Veken edited this page Jul 22, 2026 · 2 revisions

raylib-starter needs git, zip, zig 0.16, and the usual graphics development libraries (OpenGL, X11, Wayland).

1. Install your distro's packages

Ubuntu / Debian

sudo apt update
sudo apt install git curl zip xz-utils pkg-config libgl1-mesa-dev \
    libwayland-dev libwayland-bin libxkbcommon-dev \
    libx11-dev libxext-dev libxrandr-dev libxinerama-dev \
    libxcursor-dev libxi-dev libxrender-dev libxfixes-dev

Fedora

sudo dnf install git curl zip xz pkgconf-pkg-config mesa-libGL-devel \
    wayland-devel libxkbcommon-devel \
    libX11-devel libXext-devel libXrandr-devel libXinerama-devel \
    libXcursor-devel libXi-devel libXrender-devel libXfixes-devel

Arch

sudo pacman -S --needed git curl zip pkgconf mesa libglvnd \
    wayland libxkbcommon \
    libx12 libxext libxrandr libxinerama \
    libxcursor libxi libxrender libxfixes

openSUSE

sudo zypper install git curl zip xz pkg-config Mesa-libGL-devel \
    wayland-devel libxkbcommon-devel \
    libX11-devel libXext-devel libXrandr-devel libXinerama-devel \
    libXcursor-devel libXi-devel libXrender-devel libXfixes-devel

NixOS / devenv

For NixOS / devenv users, we ship a config that provides the whole toolchain:

devenv shell
# or auto activate on `cd` (requires direnv)
# https://devenv.sh/integrations/direnv/
devenv allow

2. Install zig

Distro packages often lag behind or move ahead, so install zig 0.16 from the official downloads:

mkdir -p ~/.local/bin
curl -fsSL https://ziglang.org/download/0.16.0/zig-x86_64-linux-0.16.0.tar.xz | tar -xJ -C ~/.local
ln -sf ~/.local/zig-x86_64-linux-0.16.0/zig ~/.local/bin/zig

Check it works:

zig version   # 0.16.0

If zig is not found, ~/.local/bin is not on your PATH yet: log out and back in, or add export PATH="$HOME/.local/bin:$PATH" to your shell profile.

Web builds (optional)

The web target needs emscripten:

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk && ./emsdk install latest && ./emsdk activate latest
source ./emsdk_env.sh

Clone this wiki locally