Difference between revisions of "Building ioquake3"

From ioquake3 wiki
Jump to: navigation, search
Line 19: Line 19:
 
# Install [[http://subversion.tigris.org/ Subversion]].
 
# Install [[http://subversion.tigris.org/ Subversion]].
 
# Install [[http://www.libsdl.org/ SDL development]].
 
# Install [[http://www.libsdl.org/ SDL development]].
 +
# Check out the source from svn://svn.icculus.org/quake3/trunk with "svn co svn://svn.icculus.org/quake3/trunk ioquake3"
 +
# Change to the ioquake3 directory
 +
# run [[http://www.gnu.org/software/make/ make]]

Revision as of 08:14, 19 November 2008

Microsoft Visual Studio 2008

NOTE: The following instructions will not work until the patches in [Bug 3779] are applied. If they are not, you may apply them yourself between steps 4 & 5.

  1. Download/Install [Microsoft Visual C++ 2008 Express].
  2. Download/Install [Microsoft DirectX SDK].
  3. Download/Install [Tortoise SVN].
  4. [Checkout] ioQuake3 from svn://svn.icculus.org/quake3/trunk.
  5. Open misc/msvc/ioq3.VS2008.sln.
  6. Choose a build configuration (Debug, Debug TA, Release, Release TA).
  7. Build (outputs to build/<configuration>/ioquake3.exe).

These steps have only been tested on Windows XP (32-bit). If it works on other versions of Windows please post here.

Known Issues

  • There are a large number of warnings that get thrown around when you build in either of the Release configurations. Some of these would be easy fixes (ie: explicit typecasts and moving assignments out of conditionals) while others are a little more complex. If they bother you then you can tell Visual Studio to ignore warnings by number, though be careful with this as you may end up missing out on warnings in code you write which may actually be meaningful.
  • The included libraries are built in release mode and they are linked to the release version of msvcrt. In order to stop the compiler from throwing warnings about debug vs release versions of the msvcrt libraries the debug configurations use /NODEFAULTLIB:msvcrt.lib which, if I'm not mistaken, means they will force msvcrtd.lib instead. This may cause difficult to trace problems, though it's unlikely. The *correct* fix for this would be to build the debug and release versions of all the included libraries and include the built binaries in the source tree (or have everyone build them themselves).

Linux

NOTE: These instructions apply to the SVN version.

  1. Install [Subversion].
  2. Install [SDL development].
  3. Check out the source from svn://svn.icculus.org/quake3/trunk with "svn co svn://svn.icculus.org/quake3/trunk ioquake3"
  4. Change to the ioquake3 directory
  5. run [make]