Skip to content

Dependencies

  • cmake
  • ninja-build or make
  • compiler (see compilation docs)

Libraries

  • development headers/libs for
  • glm
  • lua >= 5.4
  • sdl3
  • gtest (and gmock)
  • freetype2 (optional)
  • libjpeg (optional but recommended)
  • libpng (optional)
  • libbrotli (optional; decoder and encoder are bundled)

Some of these dependencies might not be available as packages in your toolchain - most of them are also bundled with the application. But local installed headers always have the higher priority. Usually you don't have to install anything of these.

Debian

apt-get install binutils-dev libunwind-dev libglm-dev lua5.4 liblua5.4-dev libfreetype-dev libsdl3-dev wayland-protocols pkg-config libjpeg-dev libpng-dev libbrotli-dev

RockyLinux

dnf install epel-release
dnf config-manager --set-enabled crb
dnf install SDL3-devel freetype-devel libjpeg-devel binutils-devel make cmake gcc g++ libasan libubsan ninja-build libcurl-devel

To also build the rpm files:

dnf install rpm-devel
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
rpmbuild -ba build/vengi.spec

Arch

pacman -Sy git make cmake ninja sdl3 clang

Brew

brew install sdl3 jpeg-turbo freetype cmake ninja pkg-config

Windows

vcpkg install pkg-config sdl3 libjpeg-turbo lua glm glslang gtest freetype