Changes between Version 356 and Version 357 of BuildInstructions
- Timestamp:
- Aug 8, 2019, 12:39:20 AM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BuildInstructions
v356 v357 31 31 If you want to develop, the only supported IDEs are: 32 32 33 * Visual C++ 2013 (default compiler, used in official builds of the game)34 * Visual C++ 2015 ( compiler used to build development version of the game since https://code.wildfiregames.com/rP22348)33 * Visual C++ 2013 34 * Visual C++ 2015 (default compiler) 35 35 36 36 '''Important notes:''' … … 93 93 * CMake (only needed if you use bundled NVTT) 94 94 * GCC (at least 4.8.1, required by C++11 features) 95 * Python 2.7 (required for cxxtest and non-system SpiderMonkey 38)95 * Python 2.7 (required for cxxtest and non-system SpiderMonkey 45) 96 96 * libcurl (at least 7.32) 97 97 * libenet (1.3, the older 1.2 is not compatible) 98 98 * libgloox (needed for the lobby; at least 1.0.10, previous versions are know to have connection problems; pass `--without-lobby` to `update-workspaces.sh` to exclude the lobby) 99 99 * libicu 100 * libnspr4101 100 * libogg 102 101 * libpng … … 118 117 To use shared system libraries instead of bundled copies (default) of libraries (pass the flag `--with-system-$COMPONENT` to `update-workspaces.sh` to use the non-bundled copy): 119 118 120 * [https://developer.mozilla.org/ docs/SpiderMonkey/38 SpiderMonkey 38] (`--with-system-mozjs38`)119 * [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Releases/45 SpiderMonkey 45] (`--with-system-mozjs45`) 121 120 * [https://github.com/castano/nvidia-texture-tools NVTT] (`--with-system-nvtt`) 122 121 … … 129 128 sudo apt-get install build-essential cmake libboost-dev libboost-filesystem-dev \ 130 129 libcurl4-gnutls-dev libenet-dev libgloox-dev libicu-dev \ 131 libminiupnpc-dev libn spr4-dev libnvtt-dev libogg-dev libopenal-dev \130 libminiupnpc-dev libnvtt-dev libogg-dev libopenal-dev \ 132 131 libpng-dev libsdl2-dev libvorbis-dev libwxgtk3.0-dev libxcursor-dev \ 133 132 libxml2-dev python subversion zlib1g-dev … … 137 136 * On all versions **except Ubuntu 18.04**, you will need to [https://download.libsodium.org/doc/installation/ install libsodium manually]. 138 137 * On **Ubuntu 18.04**, `sudo apt-get install libsodium-dev`. 139 * If you want to use a packaged **mozjs 38**,available for example in [https://launchpad.net/~wfg/+archive/ubuntu/0ad.dev/+packages 0ad.dev PPA]:140 * you should replace `libnspr4-dev` with `libmozjs-38-dev` and run `update-workspace.sh` with `--with-system-mozjs38`.138 * If you want to use a packaged **mozjs45**, which will be made available for example in [https://launchpad.net/~wfg/+archive/ubuntu/0ad.dev/+packages 0ad.dev PPA]: 139 * you should add `libmozjs-45-dev` and run `update-workspace.sh` with `--with-system-mozjs45`. 141 140 * When not using system nvidia-texture-tools, `libnvtt-dev` can be omitted, but `cmake` is needed to build the bundled NVTT. 142 141 * You can also use `libcurl4-openssl-dev` instead of `libcurl4-gnutls-dev` (it's not possible to install both at once), but [http://lintian.debian.org/tags/possible-gpl-code-linked-with-openssl.html note that openssl is not GPL compatible and the resulting binaries could not be redistributed]. … … 161 160 boost-devel libcurl-devel enet-devel libpng-devel libsodium-devel libvorbis-devel \ 162 161 libxml2-devel openal-soft-devel pkgconfig SDL2-devel wxGTK3-devel \ 163 gloox-devel libicu-devel miniupnpc-devel nspr-devel162 gloox-devel libicu-devel miniupnpc-devel 164 163 }}} 165 164 … … 180 179 {{{ 181 180 #!sh 182 pacman -S --needed boost cmake curl enet gcc gloox icu libgl libogg libpng libsodium libvorbis libxcursor libxml2 miniupnpc patch sdl2 subversion wxgtk zip zlib make python python2 pkg-config nsprgrep awk181 pacman -S --needed boost cmake curl enet gcc gloox icu libgl libogg libpng libsodium libvorbis libxcursor libxml2 miniupnpc patch sdl2 subversion wxgtk zip zlib make python python2 pkg-config grep awk 183 182 }}} 184 183 … … 186 185 {{{ 187 186 #!sh 188 sudo eopkg install libboost-devel libnspr-devel curl-devel enet-devel gloox-devel libicu-devel libnspr-devel libogg-devel libpng-devel libsodium-devel libvorbis-devel libxcursor-devel libxml2-devel miniupnpc-devel openal-soft-devel mesalib-devel sdl2-devel zlib-devel wxwidgets-devel187 sudo eopkg install libboost-devel curl-devel enet-devel gloox-devel libicu-devel libogg-devel libpng-devel libsodium-devel libvorbis-devel libxcursor-devel libxml2-devel miniupnpc-devel openal-soft-devel mesalib-devel sdl2-devel zlib-devel wxwidgets-devel 189 188 }}} 190 189 … … 205 204 * OpenAL 206 205 * SDL2 207 208 ''note about libnspr4:'' The [https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR nspr library], also a requirement, is in the `mozilla-nss` package, which is shipped with Slackware.209 206 210 207 Required to build Atlas: … … 252 249 libzip-1.0.1-x86_64-3_slack14.2.txz 253 250 miniupnpc-2.0-x86_64-1_slonly.txz 254 mozilla-nss-3.40.1-x86_64-1_slack14.2.txz255 251 pip-9.0.3-x86_64-1_slonly.txz 256 252 pkg-config-0.29.2-x86_64-1_slack14.2.txz … … 297 293 3. Install the 0AD dependencies that are available directly from repos: 298 294 {{{ #!sh 299 yum install cmake gcc-c++ enet-devel libglvnd-devel gloox-devel libicu-devel nspr-devel\295 yum install cmake gcc-c++ enet-devel libglvnd-devel gloox-devel libicu-devel \ 300 296 libogg-devel libpng-devel libsodium-devel libvorbis-devel libXcursor-devel libxml2-devel \ 301 297 miniupnpc-devel openal-soft-devel subversion wxGTK3-devel zlib-devel SDL2-devel … … 346 342 {{{ 347 343 #!sh 348 sudo xbps-install -Syv base-devel boost-devel cmake curl gcc icu-devel libcurl-devel libenet-devel libogg-devel libopenal-devel libpng-devel libsodium-devel libvorbis-devel libXcursor libxml2 MesaLib-devel miniupnpc-devel nspr-develpatch pkg-config SDL2-devel wxWidgets-devel zip zlib344 sudo xbps-install -Syv base-devel boost-devel cmake curl gcc icu-devel libcurl-devel libenet-devel libogg-devel libopenal-devel libpng-devel libsodium-devel libvorbis-devel libXcursor libxml2 MesaLib-devel miniupnpc-devel patch pkg-config SDL2-devel wxWidgets-devel zip zlib 349 345 }}} 350 346 If there are issues, install more header files depending on the compiler's error message. 351 `nspr-devel` is required for building SpiderMonkey andpyrogenesis requires `MesaLib-devel` to provide header files for libGL.347 pyrogenesis requires `MesaLib-devel` to provide header files for libGL. 352 348 Custom compile `gloox` for the Lobby or use xbps source packages or use `update-workspaces.sh --without-lobby` or wait until https://github.com/voidlinux/void-packages/pull/5102 is merged. 353 349 If there are unresolved shlibs or an update breaks a package, then e.g. … … 444 440 * If you want to build a distributable app bundle as described below, you will need Xcode. 445 441 * '''Note:''' As of Mavericks (10.9) and Xcode 5, Apple [https://developer.apple.com/library/mac/releasenotes/DeveloperTools/RN-Xcode/xc5_release_notes/xc5_release_notes.html#//apple_ref/doc/uid/TP40001051-CH2-SW302 no longer supports] llvm-gcc, instead it is required to use clang. Additionally, the default C++ library is now libc++ instead of libstdc++. If you've upgraded and previously built the game, you should pass the `--force-rebuild` flag to `build-osx-libs.sh`. 446 * As of Alpha 21, the game uses SpiderMonkey 38which requires a Python 2.7 version later than 2.7.3. If you're on Mountain Lion (10.8) or earlier, you will need to first update your Python installation with the latest 2.7.x installer from [https://www.python.org/downloads/release/python-279/ here].442 * As of Alpha 21, the game uses SpiderMonkey 45 which requires a Python 2.7 version later than 2.7.3. If you're on Mountain Lion (10.8) or earlier, you will need to first update your Python installation with the latest 2.7.x installer from [https://www.python.org/downloads/release/python-279/ here]. 447 443 * Obtain CMake: 448 444 * You can download a prebuilt macOS package [https://cmake.org/download/ here]. … … 544 540 * libxml2 545 541 * miniupnpc 546 * nspr547 542 * openal 548 543 * png … … 563 558 #!sh 564 559 pkg install boost-libs cmake curl enet gloox gmake iconv libGL libogg \ 565 libsodium libvorbis libxml2 miniupnpc nspropenal pkgconf png sdl2 subversion \560 libsodium libvorbis libxml2 miniupnpc openal pkgconf png sdl2 subversion \ 566 561 wx30-gtk2 zip 567 562 }}} … … 591 586 #!sh 592 587 pkg_add -i boost cmake curl enet g++ gcc gloox gmake icu4c libexecinfo libogg libsodium \ 593 libxml miniupnpc nspropenal png sdl2 subversion zip588 libxml miniupnpc openal png sdl2 subversion zip 594 589 }}} 595 590 * As OpenBSD's packaged libxml isn't build with threading support, building Atlas is not possible so you should run `update-workspaces.sh` with the `--disable-atlas` option.