|Version 8 (modified by Philip, 4 years ago) (diff)|
The current release of the game is aimed at developers and not at 'normal' users. As such, the following instructions assume a reasonable level of technical proficiency. If you encounter difficulties, please post on the forum (TODO: add a link to the right forum).
- An adequately high-spec computer - several gigabytes of free disk space, preferably at least 1GB of RAM for compiling, a fast CPU unless you want to spend ages waiting for the compiler, etc. Modern graphics hardware is also recommended, though the game can run (slowly) on fairly old devices (GeForce 4, Intel 945GM, etc).
- Up-to-date system software (Windows service packs, graphics driver updates, etc).
Windows XP and Vista are the main supported versions; 2000 and 7 may work too.
Acquiring the code
The game's code, data and build environment are stored on a Subversion server. The recommended way to get an up-to-date copy is with TortoiseSVN:
- Download and install TortoiseSVN. (Make sure you reboot when it asks you to.)
- Use TortoiseSVN to check out http://svn.wildfiregames.com/public/ps/trunk/. This may take a while, and will use around a gigabyte of disk space.
- (See the [TortoiseSVN_Guide TortoiseSVN Guide] page for more details on TortoiseSVN usage.)
Setting up the build environment
The game must be compiled with Microsoft Visual C++. If you already have Visual C++ 2005 or 2008 installed, make sure you have SP1 and then skip this section. Otherwise, you can get the free Express edition:
- Download and install Visual C++ 2008 Express Edition. (You can skip the optional Silverlight and SQL Server components.)
(If you have the old VC++ 2005 Express, you need to install the separate Platform SDK (steps 1-3).)
The Visual Studio project/solution files are automatically generated using Premake:
- Run build/workspaces/update-workspaces.bat. (You'll have to repeat this step each time a source file is added or removed from the code.)
- Open build/workspaces/vc2008/pyrogenesis.sln.
Now you should be able to build the code from within Visual Studio, and it probably should work without any errors. Run the game with F5 inside Visual Studio. If you want to run it outside the debugger, run binaries/system/pyrogenesis_dbg.exe.
Linux, OS X
This is much less streamlined than the process for Windows. But you're cooler than a Windows developer, so you should be able to cope.
- Install various standard tools and development libraries:
- wxWidgets (probably called wxgtk on Linux) (optional, but required for the editor tools)
- gamin (Linux only)
- BFD (typically called something like binutils-dev) (Linux only)
- and maybe some other things?
- For Ubuntu the following might help: sudo apt-get install build-essential libsdl1.2-dev zlib1g-dev libpng12-dev libjpeg62-dev libgamin-dev nasm libwxgtk2.8-dev libboost-dev libboost-signals-dev libopenal-dev libalut-dev libvorbis-dev libogg-dev libcrypto++-dev binutils-dev libnspr4-dev libdevil-dev
- For OS X you'll need MacPorts first. Then the following might help: sudo port install boost libsdl spidermonkey wxWidgets
- You'll need a multi-threaded build of SpiderMonkey. If you have a single-threaded version instead, you should get some compiler errors and you might need to compile the right version yourself.
- svn co http://svn.wildfiregames.com/svn/ps/trunk/
- ( cd trunk/build/premake/src && make && cp bin/premake .. )
- cd trunk/build/workspaces
- ./update-workspaces.sh (you'll have to repeat this step each time a source file is added or removed)
- cd gcc
- make -j3 (where 3 is the number of parallel builds to run, and could perhaps be one plus the number of CPU cores available)
- Fix all the compiler errors somehow.
- ( cd ../../binaries/system && ./pyrogenesis_dbg )
Installing SpiderMonkey on *nix system
To Install SpiderMonkey Libraries on *nix systems:
- Download the source code, either from mozilla site or from our site
- Unpack in a temporary directory (let's call it $temp)
- Change the directory into $temp/js/src/ cd $temp/js/src
- Build the source using make -f Makefile.ref all followed by make -f Makefile.ref export
- This last step will have put all the built binaries, libraries and headers in either $temp/dist/Linux_All_DBG.OBJ for linux systems, or $temp/dist/Darwin_DBG.OBJ for mac os x
- Change directory into $temp/dist/Linux_All_DBG.OBJ (or Darwin_DBG_OBJ) cd $temp/dist/Linux_All_DBG.OBJ
- Copy everything under include/ into the place where the compiler usually looks for header files (usually /usr/include) into a new directory called js, ie: cd include followed cp * /usr/include/js (Note: you might need to use su or sudo to get permission to copy these files)
- Copy everything under lib/ into the directory where the runtime directories are located (usually /usr/lib) cd ../lib followed by cp * /usr/lib (Note: you might need to use su or sudo to get permission to copy these files)
- Run ldconfig (if you don't, the library might not be found at runtime)
- You are free to copy the binaries under bin/ into your system binary path as well (usuall /usr/bin), but it won't be necessary to build the engine