Difference between revisions of "How to build from source"

From OdaWiki
(Getting the source)
 
(28 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 
Odamex is open source.  This means that it is possible to obtain and compile Odamex from source if you so desire.  The Odamex team wishes to make this process as painless as possible, therefore detailed instructions for how to build Odamex are provided in this section.
 
Odamex is open source.  This means that it is possible to obtain and compile Odamex from source if you so desire.  The Odamex team wishes to make this process as painless as possible, therefore detailed instructions for how to build Odamex are provided in this section.
  
== Getting the source ==
+
=Getting the source=
 
There are two ways to obtain the source to Odamex:
 
There are two ways to obtain the source to Odamex:
 +
*• [http://odamex.net/ Download] the latest stable version from the official Odamex website,
 +
*• Get the absolute latest modifications through anonymous [[Github]] access, located at https://github.com/odamex/odamex .
  
* [http://odamex.net/ Download] the latest stable version from the official Odamex website
+
=Getting required files=
* Get the absolute latest modifications through anonymous [[Subversion]] access
+
When you download Odamex, it's almost ready to go, right out of the box.  However, you need something to compile it with.  In addition, Odamex client and launcher rely on extra libraries in order to function: SDL2 and SDL2_mixer are required for the client, and wxWidgets 3.0 for the launcher.
  
== Getting required files ==
+
*• See [[Required Libraries]] for details.
When you download Odamex, it's almost ready to go, right out of the box.  However, you need something to compile it with.  In addition, Odamex relies on extra libraries in order to function.
+
  
* [[Compiling Environments]]
+
=Compiling Odamex=
* [[Required Libraries]]
+
 
+
== Compiling Odamex ==
+
 
You have all the pieces of the puzzle...now it's time to build.
 
You have all the pieces of the puzzle...now it's time to build.
  
Depending on what operating system and hardware you are running, you have many options of compilers.  Some of the more popular choices are below:
+
==Code::Blocks IDE==
 
+
Most Odamex developers use Code::Blocks, so there is a specific project file just for that editor.
===Windows===
+
*• See [[Compiling using Code::Blocks]]
====Code::Blocks IDE and MinGW====
+
*• See [[Compiling the Launcher using Code::Blocks]]
This is the prefered method of compiling Odamex on Windows.  Code::Blocks project and workspace files are included in the [[Subversion]].
+
* [[Compiling using Code::Blocks]] on Windows and Linux
+
 
+
====MinGW and MSYS====
+
This method of compiling utilizes the command line to compile Odamex.  This is useful if you prefer not to use an IDE.
+
* [[Compiling using MSYS]] on Windows
+
 
+
====Microsoft Visual Studio====
+
Odamex currently supports compiling under Microsoft Visual C++ 6.0, and a Visual C++ 6.0 project file is included in [[Subversion]].  Support for later versions of Visual Studio is unconfirmed.
+
* [[Compiling using Microsoft Visual Studio]] on Windows
+
 
+
====Cygwin and GCC====
+
Support for native Cygwin binaries is not supported at this time, though is both feasable and desirable in the future.  You can, however, compile Odamex without Cygwin support under Cygwin, with minor adjustments, though this is not considered "Cygwin GCC".
+
 
+
===Linux===
+
====GCC====
+
This is the prefered method of compiling Odamex in Linux.  Makefiles are included in the [[Subversion]].
+
 
+
===FreeBSD===
+
====GCC====
+
This is the prefered method of compiling Odamex in FreeBSD.  Makefiles are included in [[Subversion]], and should work with the FreeBSD version of GNU Make (gmake) and GCC.
+
* [[Compiling using GCC]] on GNU/Linux, FreeBSD and Cygwin
+
 
+
===OSX===
+
====Xcode====
+
* [[Compiling using Xcode]] on Mac
+
 
+
== Compiling the Launcher ==
+
So you want to mess around with the Launcher?  Here's how to do it.
+
 
+
* [[Compiling the Launcher using Code::Blocks]] on Windows
+
  
== Building odamex.wad ==
+
==CMake==
This will show you how to build the latest odamex.wad file
+
In most other cases we use CMake to create project files or Makefiles that are tailored to each system.
 +
*• See [[Compiling using CMake]]
  
* [[Building odamex.wad using DeuTex]] on multiple platforms
+
==Outdated==
 +
The following build methods no longer exist as of 0.6.1.  However, if you are building 0.6.0 or earlier, you might be interested in the information below.
 +
*[[Compiling using GCC]]
 +
*• [[Debian package]]
 +
*• [[Compiling using Xcode]]
 +
*• [[Cross compiling for Windows using MinGW]]
  
''Note: odamex.wad gets built automatically when using the Makefile
+
=Building odamex.wad=
 +
This will show you how to build the latest odamex.wad file.  This is usually not necessary, as an up-to-date version of odamex.wad is included in the source tree, but here's instructions for how to do it regardless.
 +
*• [[Building odamex.wad using DeuTex]] on multiple platforms

Latest revision as of 15:23, 17 January 2019

Odamex is open source. This means that it is possible to obtain and compile Odamex from source if you so desire. The Odamex team wishes to make this process as painless as possible, therefore detailed instructions for how to build Odamex are provided in this section.

Getting the source

There are two ways to obtain the source to Odamex:

Getting required files

When you download Odamex, it's almost ready to go, right out of the box. However, you need something to compile it with. In addition, Odamex client and launcher rely on extra libraries in order to function: SDL2 and SDL2_mixer are required for the client, and wxWidgets 3.0 for the launcher.

Compiling Odamex

You have all the pieces of the puzzle...now it's time to build.

Code::Blocks IDE

Most Odamex developers use Code::Blocks, so there is a specific project file just for that editor.

CMake

In most other cases we use CMake to create project files or Makefiles that are tailored to each system.

Outdated

The following build methods no longer exist as of 0.6.1. However, if you are building 0.6.0 or earlier, you might be interested in the information below.

Building odamex.wad

This will show you how to build the latest odamex.wad file. This is usually not necessary, as an up-to-date version of odamex.wad is included in the source tree, but here's instructions for how to do it regardless.