Changes between Version 227 and Version 228 of BuildInstructions


Ignore:
Timestamp:
Mar 29, 2014, 2:19:59 PM (10 years ago)
Author:
Yves
Comment:

Modifications for the new SpiderMonkey. I couldn't test on all systems and update all sections of the build documentation. I also might have removed some stuff that is still true. I thought it's better to write things down again if they still apply instead of keeping a lot of old notes that are partially wrong and nobody will ever remove them.

Legend:

Unmodified
Added
Removed
Modified
  • BuildInstructions

    v227 v228  
    104104 * libcurl
    105105 * libgloox (needed for the lobby; pass `--without-lobby` to `update-workspaces.sh` to exclude the lobby)
     106 * libnspr4
    106107 * libogg
    107108 * libpng
     
    114115 * SDL
    115116 * Subversion (or git if you want to use the Git mirror; see below)
    116  * zip (only needed if you use bundled spidermonkey)
    117117 * zlib
    118118
     
    121121To 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):
    122122 * [http://enet.bespin.org/ ENet 1.3] (`--with-system-enet`)
    123  * [https://developer.mozilla.org/en/SpiderMonkey/1.8.5 SpiderMonkey 1.8.5] (`--with-system-mozjs185`)
     123 * [https://developer.mozilla.org/docs/SpiderMonkey/24 SpiderMonkey 24] (`--with-system-mozjs24`)
    124124 * [http://code.google.com/p/nvidia-texture-tools NVTT] (`--with-system-nvtt`)
    125125 * [http://miniupnp.free.fr/ MiniUPnP client] (`--with-system-miniupnpc`)
     
    133133sudo apt-get install build-essential libboost-dev libboost-filesystem-dev   \
    134134    libboost-signals-dev libcurl4-gnutls-dev libenet-dev libgloox-dev       \
    135     libjpeg-dev libminiupnpc-dev libmozjs185-dev libnvtt-dev libogg-dev     \
     135    libjpeg-dev libminiupnpc-dev libnspr4-dev libnvtt-dev libogg-dev     \
    136136    libopenal-dev libpng-dev libsdl-dev libvorbis-dev libwxgtk2.8-dev       \
    137137    libxcursor-dev libxml2-dev subversion zlib1g-dev
    138138}}}
    139  * With that dependencies you have to run `update-workspaces.sh` with `--with-system-enet --with-system-miniupnpc --with-system-mozjs185 --with-system-nvtt` flags.
     139 * With that dependencies you have to run `update-workspaces.sh` with `--with-system-enet --with-system-miniupnpc --with-system-nvtt` flags.
    140140 * On Debian jessie/8 and Ubuntu trusty/14.04 or later you should replace `libwxgtk2.8-dev` with `libwxgtk3.0-dev`.
    141  * When not using system libraries, `libenet-dev`, `libmozjs185-dev` and `libnvtt-dev` can be omitted, but `cmake` is needed to build the bundled NVTT and `zip` is needed to build the bundled mozjs185.
     141 * On Ubuntu 14.04 you can also install libmozjs-24-dev and run update-workspace.sh with --with-system-mozjs24 to use the SpiderMonkey library provided by the system.
     142 * When not using system libraries, `libenet-dev` and `libnvtt-dev` can be omitted, but `cmake` is needed to build the bundled NVTT.
    142143 * 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].
    143144
     
    376377}}}
    377378 * 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.
    378  * You probably need to rename the generated !SpiderMonkey lib to `libmozjs185-ps-{debug,release}.so.1.0.1.0` and run pyrogenesis with `LD_PRELOAD=/usr/local/lib/libogg.so.6.2:/usr/local/lib/libvorbis.so.8.0` (see #1463).
     379 * 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).
    379380
    380381[[BR]]
     
    389390 * If you get linker errors like '''`/usr/bin/ld: Undefined symbols: ___stack_chk_fail, ___stack_chk_guard`''', this comes from using a libc that is not glibc >=2.4. Until this is detected by the build system, you can hack it by removing the "-fstack-protector-all" line (and the next line too if needed) from [source:/ps/trunk/build/premake/premake4.lua build/premake/premake4.lua]
    390391
    391  * If !SpiderMonkey has compile errors during `update-workspace.sh`, throwing errors like '''`'r13' is not a member of 'JSC::X86Registers'`''', then you likely have a 32-bit userspace with a 64-bit kernel. Run
    392 {{{
    393 export CHOST=i386-pc-linux-gnu
    394 }}}
    395    before compiling.
    396 
    397392 * If in Visual Studio 2010 build of pyrogenesis fails with link error like:
    398393{{{