Dependencies.wiki
author Wuzzy
Wed, 29 Jan 2020 17:40:29 +0100
changeset 2129 7c5c59981cf4
parent 2003 3ef8ba6afe0b
permissions -rw-r--r--
GearTypes: Add minimum sine radius

#summary List of programs and libraries for building and/or running Hedgewars

= Dependencies =
== Dependencies for fetching latest source code ==
If you want to get the source code from the mercurial repository, you'll need these.

|| *Name* || *Homepage* ||
|| Mercurial || [https://www.mercurial-scm.org/] ||

== Build-only dependencies ==
You need these packages to build Hedgewars, but not afterwards.

|| *Name* || *Version* (Latest HW release) || *Version* (Unstable) || *Homepage* ||
|| CMake || 2.6 || 2.6 || [https://www.cmake.org/] ||

== Core dependencies ==
You need these programs and libraries to build and run Hedgewars.
Note: You will need the development headers of the libraries for building only.

|| *Name* || *Version* (Latest HW release) || *Version* (Unstable) || *Homepage* ||
|| Qt || 5.0.0 || 5.0.0 || [https://www.qt.io/] ||
|| SDL || 2.0 || 2.0 || [https://libsdl.org/] ||
|| SDL_net || 2.0 || 2.0 || [https://libsdl.org/] ||
|| SDL_mixer || 2.0 || 2.0 || [https://libsdl.org/] ||
|| SDL_image || 2.0 || 2.0 || [https://libsdl.org/] ||
|| SDL_TTF || 2.0 || 2.0 || [https://libsdl.org/] ||
|| FPC (Free Pascal Compiler) || 2.2.4 || 2.2.4 || [https://freepascal.org/] ||
|| PhysFS || 3.0.0 || 3.0.0 || [https://icculus.org/physfs/] ||

== Bundled dependencies ==
You can build/run Hedgewars using these packages from your system or use those that come with the Hedgewars source:

|| *Name* || *Version* (Latest HW release) || *Version* (Unstable) || *Homepage* ||
|| Lua || 5.1 (exactly) || 5.1 (exactly) || [https://www.lua.org/] ||

Bundled Fonts:
|| *Name* || *Homepage* || *Comment* ||
|| !DejaVu Sans Bold || [http://dejavu-fonts.org/] || — ||
|| Zen Hei || [http://wenq.org/] || From the !WenQuanYi project. Font is internally known as “wgy-zenhei” ||

== Optional dependencies ==
You don’t need to install these packages to build Hedgewars, but if you don’t, some features will be missing.

=== For PNG screenshots ===
|| *Name* || *Version* || *Homepage* ||
|| libpng || 1.2 || [http://www.libpng.org/pub/png/libpng.html] ||

Without this, all screenshots will be bitmaps (BMP) instead.

=== Video recording ===
For the video recorder, you need either FFmpeg _or_ Libav. And FreeGLUT.

|| *Name* || *Version* || *Homepage* ||
|| FFmpeg || ??? || [https://ffmpeg.org/] ||
|| Libav || ??? || [https://libav.org/] ||
|| FreeGLUT || 3.0 || [http://freeglut.sourceforge.net/] ||

*Note*: See also VideoRecorder for detailed instructions to build the video recorder.

=== Server ===
The server is built seperately. If you want to build the server you need a couple of Haskell-related packages. First you need GHC:
|| *Name* || *Version* || *Homepage* ||
|| GHC (Glasgow Haskell Compiler) || 6.10 || [https://www.haskell.org/ghc/] ||

Then you need a couple of Haskell software. Please refer to [http://hg.hedgewars.org/hedgewars/file/tip/INSTALL.md INSTALL.md] for a list.