Jump to content

Compiling Zandronum on Linux: Difference between revisions

Remove SQLite as a requirement (Zan now downloads it automatically)
(changed to dev for libsdl1.2-compat)
Tag: Source edit
(Remove SQLite as a requirement (Zan now downloads it automatically))
Tag: Source edit
 
(4 intermediate revisions by 2 users not shown)
Line 11: Line 11:
** [http://zandronum.com/essentials/fmod/ FMOD Ex] 4.44.64
** [http://zandronum.com/essentials/fmod/ FMOD Ex] 4.44.64
** libopenssl ''(for Zandronum 1.3 or later)''
** libopenssl ''(for Zandronum 1.3 or later)''
** SQLite ''(for Zandronum 1.3 or later)''
** libopus ''(for Zandronum 3.2 or later)''
* '''Recommended'''
* '''Recommended'''
** GTK2
** GTK2
** mercurial ''(needed in order to [https://bitbucket.org/Torr_Samaho/zandronum download the source] and compile in commit meta data)''
** mercurial ''(needed in order to [https://foss.heptapod.net/zandronum/zandronum-stable download the source] and compile in commit meta data)''
*** mercurial-evolve ''(optional, includes the <tt>topic</tt> and <tt>evolve</tt> extensions, which are needed only if you intend to compile a specific topic. Some distros may include these as part of their base Mercurial package)''
** nasm 0.98.39 or later ''(x86-32 only)''
** nasm 0.98.39 or later ''(x86-32 only)''
* '''Optional'''
* '''Optional'''
Line 29: Line 30:
=== Debian/Ubuntu ===
=== Debian/Ubuntu ===
<pre>
<pre>
sudo apt-get install g++ make cmake libsdl1.2-compat-dev mercurial zlib1g-dev \
sudo apt-get install g++ make cmake libsdl1.2-compat-dev mercurial mercurial-evolve zlib1g-dev \
libbz2-dev libjpeg-dev libfluidsynth-dev libgtk2.0-dev timidity nasm \
libbz2-dev libjpeg-dev libfluidsynth-dev libgtk2.0-dev timidity nasm \
libgl1-mesa-dev libssl-dev tar libglew-dev
libgl1-mesa-dev libssl-dev tar libglew-dev libopus-dev
</pre>
</pre>


Line 38: Line 39:
dnf install gcc-c++ make cmake SDL-devel mercurial zlib-devel \
dnf install gcc-c++ make cmake SDL-devel mercurial zlib-devel \
bzip2-devel libjpeg-turbo-devel fluidsynth-devel gtk2-devel timidity++ nasm \
bzip2-devel libjpeg-turbo-devel fluidsynth-devel gtk2-devel timidity++ nasm \
mesa-libGL-devel openssl-devel tar
mesa-libGL-devel openssl-devel glew glew-devel tar
</pre>
</pre>


Line 89: Line 90:


'''Do the following sections as normal user.'''
'''Do the following sections as normal user.'''
== Enable Mercurial extensions ==
This section is optional, and is required only if you intend to build a specific topic. Doing so requires the <tt>topic</tt> and <tt>evolve</tt> extensions to be enabled. Some distros may package these separately from the base Mercurial package, so check your package manager.
Add the following to the <tt>extensions</tt> section of <tt>~/.hgrc</tt>:
<syntaxhighlight lang="ini">
[extensions]
topic =
evolve =
</syntaxhighlight>


== Create zandronum_build directory ==
== Create zandronum_build directory ==
Line 99: Line 111:
<pre>
<pre>
cd ~/zandronum_build &&
cd ~/zandronum_build &&
hg clone https://hg.osdn.net/view/zandronum/zandronum-stable zandronum &&
hg clone https://foss.heptapod.net/zandronum/zandronum-stable zandronum &&
mkdir -pv zandronum/buildclient zandronum/buildserver
mkdir -pv zandronum/buildclient zandronum/buildserver
</pre>
</pre>