Compiling for Linux, *BSD¶
See also
This page describes how to compile Linux editor and export template binaries from source. If you're looking to export your project to Linux instead, read Exporting for Linux.
Requirements¶
For compiling under Linux or other Unix variants, the following is required:
GCC 7+ or Clang 6+.
SCons 3.0+ build system.
Note
If your distribution uses Python 2 by default, or you are using a version of SCons prior to 3.1.2, you will need to change the version of Python that SCons uses by changing the shebang (the first line) of the SCons script file to
#! /usr/bin/python3
. Use the commandwhich scons
to find the location of the SCons script file.pkg-config (used to detect the development libraries listed below).
Development libraries:
X11, Xcursor, Xinerama, Xi and XRandR.
MesaGL.
ALSA.
PulseAudio.
Optional - libudev (build with
udev=yes
).
See also
To get the Godot source code for compiling, see Getting the source.
For a general overview of SCons usage for Godot, see Introduction to the buildsystem.
Distro-specific one-liners¶
apk add \
scons \
pkgconf \
gcc \
g++ \
libx11-dev \
libxcursor-dev \
libxinerama-dev \
libxi-dev \
libxrandr-dev \
mesa-dev \
libexecinfo-dev \
eudev-dev \
alsa-lib-dev \
pulseaudio-dev
pacman -S --needed \
scons \
pkgconf \
gcc \
libxcursor \
libxinerama \
libxi \
libxrandr \
mesa \
glu \
libglvnd \
alsa-lib \
pulseaudio
apt-get install \
build-essential \
scons \
pkg-config \
libx11-dev \
libxcursor-dev \
libxinerama-dev \
libgl1-mesa-dev \
libglu-dev \
libasound2-dev \
libpulse-dev \
libudev-dev \
libxi-dev \
libxrandr-dev
dnf install \
scons \
pkgconfig \
libX11-devel \
libXcursor-devel \
libXrandr-devel \
libXinerama-devel \
libXi-devel \
mesa-libGL-devel \
mesa-libGLU-devel \
alsa-lib-devel \
pulseaudio-libs-devel \
libudev-devel \
gcc-c++ \
libstdc++-static \
libatomic-static
pkg install \
py37-scons \
pkgconf \
xorg-libraries \
libXcursor \
libXrandr \
libXi \
xorgproto libGLU \
alsa-lib \
pulseaudio
emerge -an \
dev-util/scons \
x11-libs/libX11 \
x11-libs/libXcursor \
x11-libs/libXinerama \
x11-libs/libXi \
media-libs/mesa \
media-libs/glu \
media-libs/alsa-lib \
media-sound/pulseaudio
urpmi \
scons \
task-c++-devel \
pkgconfig \
"pkgconfig(alsa)" \
"pkgconfig(glu)" \
"pkgconfig(libpulse)" \
"pkgconfig(udev)" \
"pkgconfig(x11)" \
"pkgconfig(xcursor)" \
"pkgconfig(xinerama)" \
"pkgconfig(xi)" \
"pkgconfig(xrandr)"
pkg_add \
python \
scons \
llvm
zypper install \
scons \
pkgconfig \
libX11-devel \
libXcursor-devel \
libXrandr-devel \
libXinerama-devel \
libXi-devel \
Mesa-libGL-devel \
alsa-devel \
libpulse-devel \