1,544
edits
DrinkyBird (talk | contribs) mNo edit summary Tag: Source edit |
DrinkyBird (talk | contribs) (Rename thg section to just Mercurial; point to mercurial-scm.org as it tends to be more up to date than the thg site) Tag: Source edit |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Prerequisites = | = Prerequisites = | ||
== Visual Studio == | == Visual Studio == | ||
Zandronum requires the Visual Studio 2015 toolchain to be built. Microsoft no longer offers 2015 for (easy) download, but forunately, modern versions of Visual Studio can use older | Zandronum requires the Visual Studio 2015 toolchain to be built. Microsoft no longer offers 2015 for (easy) download, but forunately, modern versions of Visual Studio can use older toolchains. | ||
<ol> | <ol> | ||
Line 9: | Line 9: | ||
[[File:Vs2022 cppdevel.png|none]]</li> | [[File:Vs2022 cppdevel.png|none]]</li> | ||
<li>On the | <li>On the '''Individual components''' tab, scroll down to the '''Compilers, build tools, and runtimes''' section, and select the '''MSVC v140 - VS 2015 C++ build tools (v14.00)''' and '''C++ Windows XP Support for VS 2017 (v141) tools''' components.</li> | ||
<li>Proceed with the installation.</li> | <li>Proceed with the installation.</li> | ||
Line 33: | Line 32: | ||
<!-- IGNORE THIS FOR NOW :x64 platforms use this: https://zdoom.org/files/fmod/fmodapi42416win64-installer.exe --> | <!-- IGNORE THIS FOR NOW :x64 platforms use this: https://zdoom.org/files/fmod/fmodapi42416win64-installer.exe --> | ||
== | == Mercurial == | ||
https:// | Download the latest version of TortoiseHg for Windows from [https://www.mercurial-scm.org/ the Mercurial website]. This bundle includes Mercurial itself and the TortoiseHg graphical user interface. | ||
Used for downloading the | Used for downloading the source code and fetching the Mercurial revision ID when compiling the build. | ||
If you wish to build a specific topic, you must enable the <tt>topic</tt> and <tt>evolve</tt> Mercurial extensions. To do so, either: | |||
* Open TortoiseHg Workbench, go to the File menu -> Settings, open the global settings tab, open the Extensions section, and select the <tt>topic</tt> and <tt>evolve</tt> extensions, then completely exit TortoiseHg Workbench. | |||
* or, manually add the following to <tt>mercurial.ini</tt> in your user directory: | |||
<syntaxhighlight lang="ini"> | |||
[extensions] | |||
topic = | |||
evolve = | |||
</syntaxhighlight> | |||
== DirectX SDK == | == DirectX SDK == | ||
Line 55: | Line 63: | ||
OpenSSL is necessary in order for Zandronum to communicate securely with the account authentication server. | OpenSSL is necessary in order for Zandronum to communicate securely with the account authentication server. | ||
Precompiled binaries for Windows are available from [https://slproweb.com/products/Win32OpenSSL.html Shining Light Productions]. You will want the latest '''non-light''' edition of OpenSSL 1. | Precompiled binaries for Windows are available from [https://slproweb.com/products/Win32OpenSSL.html Shining Light Productions]. You will want the latest '''non-light''' edition of OpenSSL (both 3.x.x and 1.x.x are known to work) - the description of the correct package mentions "software developers". You should have a choice between 32-bit and 64-bit versions - you will most likely need the 32-bit version unless you are using CMake and select the 64-bit compiler when generating your build files. | ||
=== Building OpenSSL === | === Building OpenSSL === | ||
Line 85: | Line 93: | ||
Version 3.5 or newer is required. | Version 3.5 or newer is required. | ||
== Opus == | |||
The Opus audio codec is required for voice chat support. | |||
Download the latest libopus archive from [https://opus-codec.org/downloads/ the Opus website]. Extract the archive, then open the <tt>win32\VS2015\opus.sln</tt> solution (allow Visual Studio to upgrade the projects if necessary). Build the <tt>Release</tt> configuration for the same platform you will build Zandronum for (Win32 or x64). | |||
After building, you will have a static library built under your libopus directory at <tt>win32\VS2015\Win32\Release\opus.lib</tt> or <tt>win32\VS2015\x64\Release\opus.lib</tt>. Pass the full path to the relevant library as the <tt>OPUS_LIBRARIES</tt> variable when it comes time to run CMake. Additionally, pass the libopus <tt>include</tt> folder as <tt>OPUS_INCLUDE_DIR</tt>. | |||
== Zandronum Source Code == | == Zandronum Source Code == | ||
Line 91: | Line 107: | ||
In the directory where you want to download the source, right-click on empty space, and go to <code>TortoiseHg → Clone</code>. | In the directory where you want to download the source, right-click on empty space, and go to <code>TortoiseHg → Clone</code>. | ||
Enter <code>https:// | Enter <code>https://foss.heptapod.net/zandronum/zandronum-stable</code> as the source. | ||
If you want to clone a specific revision, expand ''Options'', check ''Clone to revision'', and enter the revision you want to clone. | If you want to clone a specific revision, expand ''Options'', check ''Clone to revision'', and enter the revision you want to clone. | ||
For example, if you wanted to download Zandronum | For example, if you wanted to download [[Version history/{{LatestVersion}}|Zandronum {{LatestVersion}}]]'s source, you'd enter <code>ZA_{{LatestVersion}}</code>. | ||
== Optional prerequisites == | == Optional prerequisites == | ||
Line 113: | Line 129: | ||
If it says there was an error, ignore it as we will solve it now. | If it says there was an error, ignore it as we will solve it now. | ||
Make sure you set up all prerequisites correctly, and point CMake to the location of any missing paths. | Make sure you set up all prerequisites correctly, and point CMake to the location of any missing paths. Select the '''Advanced''' and '''Grouped''' checkboxes to reveal and group all options. | ||
Then click ''Configure'' again, and point CMake to missing paths. | Then click ''Configure'' again, and point CMake to missing paths. |