Changes between Version 415 and Version 416 of BuildInstructions


Ignore:
Timestamp:
Jul 12, 2021, 11:20:44 AM (3 months ago)
Author:
Ceres
Comment:

Added notes about keys for building, i.e. F7 in VS 2017 and Ctrl+B in VS 2019, and about building Atlas

Legend:

Unmodified
Added
Removed
Modified
  • BuildInstructions

    v415 v416  
    44
    55The development version of the game is aimed at software developers (not regular players). As such, these instructions assume a higher level of technical proficiency. If you encounter difficulties, please consult the [https://www.wildfiregames.com/forum/index.php?showforum=312 forum].
    6 
    7 
    86
    97== System requirements ==
     
    3634Finally, the source code is build by the workspace. For example, by running `make` in `build/workspaces/gcc`.
    3735
    38 
    39 
    4036== Windows ==
    4137The main supported versions are:
     
    7066Make sure to select the "Release" configuration to build an optimized, more playable version of the game (the target will be `pyrogenesis.exe`). The "Debug" configuration can be more useful for debugging but has significantly reduced performance (the target will be `pyrogenesis_dbg.exe`). Both "Release" and "Debug" builds include debug symbols, see [wiki:Debugging] and [wiki:DebuggingOnWindows Debugging on Windows] for more details on debugging.
    7167
    72 Now you should be able to build the code from within Visual Studio, using "Build Solution" (F7).
     68Now you should be able to build the code from within Visual Studio, using "Build Solution" (F7 in VS 2017 and Ctrl+B in VS 2019).
    7369
    7470=== Building Atlas ===
    7571If you also wish to test the [wiki:Atlas_Manual Atlas Scenario Editor] or [wiki:Actor_Editor Actor Editor] tools, you will need to download and build the [http://www.wxwidgets.org/ wxWidgets] library separately (version 3.0 and above; see [source:/ps/trunk/libraries/wxwidgets/README.txt ps\libraries\win32\wxwidgets\README.txt] for details), then supply the `--atlas` option when running `update-workspaces.bat`. Atlas projects will now be included when you open `pyrogenesis.sln` in Visual C++.
     72
     73'''Note:''' You might run into a few errors while building Atlas. As an easy fix, after `update-workspaces.bat`, just rebuild without the `--atlas` parameter and then copy `atlasUI.dll` into  the binaries/system folder [see [https://wildfiregames.com/forum/topic/46916-using-windows-10s-linux-subsystem-for-development/?do=findComment&comment=441134 forum post]]
    7674
    7775=== Running ===
     
    8987=== Building Windows dependencies ===
    9088By default windows come with prebuilt libraries but you might want to rebuild them yourself, to do so follow the instructions at BuildingWindowsDependencies.
    91 
    92 
    9389
    9490== Linux ==
     
    132128For a list of all options to `update-workspaces.sh` see [wiki:premake].
    133129
    134 
    135130==== !ArchLinux, Manjaro ====
    136131{{{
     
    140135    python2 rust sdl2 subversion wxgtk3 zip zlib
    141136}}}
    142 
    143137==== Debian, Ubuntu ====
    144138 * On **Debian 10 (Buster) or Ubuntu 18.04 LTS (Bionic Beaver) or later** install the required dependencies with:
     
    185179    libxml2-devel libwxgtku2.8-devel openal-soft-devel libicu-devel
    186180}}}
    187 
    188181==== openSUSE ====
    189182Install the dependencies with:
     
    196189    gloox-devel libicu-devel miniupnpc-devel libfmt-devel
    197190}}}
    198 
    199191==== Solus ====
    200192{{{
     
    202194sudo eopkg install libboost-devel curl-devel enet-devel gloox-devel libicu-devel libogg-devel libpng-devel libsodium-devel libvorbis-devel libxml2-devel miniupnpc-devel openal-soft-devel mesalib-devel sdl2-devel zlib-devel wxwidgets-devel libgnutls-devel fmt-devel
    203195}}}
    204 
    205196==== Slackware ====
    206197After installing the dependencies for your particular version, you can build **0 A.D.** from the [#Gettingthecode svn code] using the instructions from the [#Building Building] section.
     
    268259kernel-headers-4.4.261-x86-1.txz
    269260}}}
    270 
    271261Kernel headers must match your kernel version.
    272262
    273 Use the 0ad-data and 0ad slackbuilds from https://slackbuilds.org/repository/14.2/games/0ad-data/ and https://slackbuilds.org/repository/14.2/games/0ad/
    274 this is fine for v0.0.23b . Newer versions require gcc>=7 so you'll have to use slackware-current or wait till slackware 15.0 comes out if you want to try them out.
     263Use the 0ad-data and 0ad slackbuilds from https://slackbuilds.org/repository/14.2/games/0ad-data/ and https://slackbuilds.org/repository/14.2/games/0ad/ this is fine for v0.0.23b . Newer versions require gcc>=7 so you'll have to use slackware-current or wait till slackware 15.0 comes out if you want to try them out.
    275264
    276265'''''Slackware-current'''''
     
    280269Make the following modifications to both 0ad.!SlackBuild and 0ad-data.!SlackBuild build scripts:
    281270
    282 Modify 0ad.!SlackBuild to skip the build-tests:
    283 Old:
    284 build/workspaces/update-workspaces.sh \
    285   --without-pch \
    286   --bindir=/usr/games \
    287   --datadir=/usr/share/games/0ad \
    288   --libdir=/usr/lib${LIBDIRSUFFIX}/0ad \
    289   --${ATLAS:-disable}-atlas
    290 
    291 New:
    292 build/workspaces/update-workspaces.sh \
    293   --without-pch \
    294   --bindir=/usr/games \
    295   --datadir=/usr/share/games/0ad \
    296   --libdir=/usr/lib${LIBDIRSUFFIX}/0ad \
    297   --without-tests \
    298   --${ATLAS:-disable}-atlas
     271Modify 0ad.!SlackBuild to skip the build-tests: Old: build/workspaces/update-workspaces.sh \
     272
     273  --without-pch \ --bindir=/usr/games \ --datadir=/usr/share/games/0ad \ --libdir=/usr/lib${LIBDIRSUFFIX}/0ad \ --${ATLAS:-disable}-atlas
     274
     275New: build/workspaces/update-workspaces.sh \
     276
     277  --without-pch \ --bindir=/usr/games \ --datadir=/usr/share/games/0ad \ --libdir=/usr/lib${LIBDIRSUFFIX}/0ad \ --without-tests \ --${ATLAS:-disable}-atlas
    299278
    300279'''''Slackware-Current(no-root,dev,alternative)'''''
    301280
    302 Optional way is without using SlaCkBuilds, not making a package. For keeping a local, constantly modified, rebuilt and custom patched version under /home/$(whoami)
    303 https://bitbucket.org/subslackstock/scripts/src/master/bash/LatestBuild.sh
    304 
     281Optional way is without using SlaCkBuilds, not making a package. For keeping a local, constantly modified, rebuilt and custom patched version under /home/$(whoami) https://bitbucket.org/subslackstock/scripts/src/master/bash/LatestBuild.sh
    305282
    306283==== CentOS ====
     
    408385If you want to create packages for a Linux distribution see the current [https://salsa.debian.org/games-team/0ad/tree/master/debian 0ad] and [https://salsa.debian.org/games-team/0ad-data/tree/master/debian 0ad-data] packages on [https://salsa.debian.org/public Salsa] for examples (especially the `control` and `rules` files).
    409386
    410 {{{#!comment Keep anchor for convenient fragment links to the former "OS X" heading.
    411 }}}
    412 [=#OS_X]
     387`#!comment Keep anchor for convenient fragment links to the former "OS X" heading. ` [=#OS_X]
    413388
    414389== macOS ==
     
    484459   * Use `build-osx-bundle.sh --release`, to create a bundle from a clean SVN working copy.
    485460   * Package the bundle inside a compressed DMG with background image, for easy distribution (see ReleaseProcess).
    486 
    487 
    488461
    489462== BSD ==
     
    544517
    545518=== OpenBSD ===
    546 
    547 **OBSOLETE, NEEDS UPDATING**
    548 {{{ why FreeBSD has clang suggested, but OpenBSD egcc...}}}
    549 
     519**OBSOLETE, NEEDS UPDATING** ` why FreeBSD has clang suggested, but OpenBSD egcc...`
    550520
    551521 * You need to set `CC` and `CXX` before building
     
    563533 * You probably need to run pyrogenesis with `LD_PRELOAD=/usr/local/lib/libogg.so.6.2:/usr/local/lib/libvorbis.so.8.0` (see #1463).
    564534
    565 
    566 
    567535== Known problems and solutions ==
    568536 * None currently.