Difference between revisions of "MG/CodeBlocks Compiling"

From MegaGlest
Jump to navigation Jump to search
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
=='''CodeBlocks Cross Platform IDE / Compiling'''==
+
This way of building MegaGlest is no longer supported.
'''Please note that we do not currently recommend this approach on Windows unless you know how to fix compilation and linking issues by yourself. On Windows, use VC++ 2008 for now.'''
+
This page details how to perform cross platform compiling for MegaGlest with CodeBlocks. It is recommended to use VC2008+ instead of this approach if compiling on Windows. Project files for codeblocks are not always up to date and therefore not fully supported but rather for educational purposes. The cmake build system used by megaglest may produce codeblocks project files that work better than the project files included in these steps.
 +
 
 +
==CodeBlocks Cross Platform IDE / Compiling==
 
===Check out the source code===
 
===Check out the source code===
  
Line 11: Line 13:
 
''jpeg, lua5.1, png, SDL, openal, curl, xerces-c, ogg, vorbis, vorbisfile, vorbisenc, z, GL, GLU, SDLmain, ircclient''
 
''jpeg, lua5.1, png, SDL, openal, curl, xerces-c, ogg, vorbis, vorbisfile, vorbisenc, z, GL, GLU, SDLmain, ircclient''
  
Some of the tools also require ''wx.<br />''
+
Some of the tools also require ''wx''. On Debian like systems (such as Ubuntu and its derivatives), these packages will typically start with "lib", sometimes have a number added, and end with "-dev". For example, the development package for the xerces-c library may be called ''libxerces-c2-dev''.
Hint: On Debian like systems (such as Ubuntu and its derivatives), these packages will typically start with "lib", sometimes have a number added, and end with "-dev". For example, the development package for the xerces-c library may be called ''libxerces-c2-dev''.
 
  
 
====Windows====
 
====Windows====
Download the [https://sourceforge.net/projects/megaglest/files/win32_deps_mingw.7z/download mingw build dependencies archive], then decompress (using [http://www.7-zip.org/ 7-zip]) the mingw dependency archive into the '''source''' folder. You should now see a '''source\win32_deps''' sub-folder with lots of stuff inside.
+
Download the [https://sourceforge.net/projects/megaglest/files/win32_deps_mingw.7z/download Mingw build dependencies archive], then decompress the mingw dependency archive (using [http://www.7-zip.org/ 7-zip]) into the ''source'' folder. You should now see a ''source\win32_deps'' sub-folder with lots of stuff inside.
  
 
===Install CodeBlocks===
 
===Install CodeBlocks===
 
 
[http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks Install CodeBlocks] for your platform.
 
[http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks Install CodeBlocks] for your platform.
  
  
 
===Configure CodeBlocks===
 
===Configure CodeBlocks===
 
+
If you plan to build Windows binaries ([http://forums.codeblocks.org/index.php?topic=3343.0 Linux Cross Compile] or [http://wiki.codeblocks.org/index.php?title=MinGW_installation Windows Mingw]) configure CodeBlocks for Mingw.
If you plan to build Windows binaries ([http://forums.codeblocks.org/index.php?topic=3343.0 Linux Cross Compile] or [http://wiki.codeblocks.org/index.php?title=MinGW_installation Windows Mingw]) configure CodeBlocks for mingw.
 
  
 
Open the main workspace in CodeBlocks located in:''' mk/windoze/megaglest.workspace'''
 
Open the main workspace in CodeBlocks located in:''' mk/windoze/megaglest.workspace'''
  
 
===Make a build===
 
===Make a build===
 
 
Select the build target (the dropdown at the top) from current available options:
 
Select the build target (the dropdown at the top) from current available options:
  
Line 40: Line 38:
 
*Debug Linux.
 
*Debug Linux.
  
From the Build Menu option Select '''Rebuild Workspace'''.<br />
+
From the Build Menu option Select ''Rebuild Workspace''.
  
 
===Inspecting your builds===
 
===Inspecting your builds===
 
 
====Linux targets====
 
====Linux targets====
 
+
Linux targets compile into ''mk/linux'' and are called ''glest.bin, glest_editor, glest_g3dviewer'' etc.
Linux targets compile into '''mk/linux''' and are called '''glest.bin, glest_editor, glest_g3dviewer''' etc.
 
  
 
====Windows targets====
 
====Windows targets====
 +
If nothing goes wrong you will see ''glest_game.exe'' (and other binaries) in ''data/glest_game'' for Windows targets (where all the data content lives).
  
If nothing goes wrong you will see '''glest_game.exe''' (and other binaries) in '''data/glest_game''' for Windows targets (where all the data content lives).
+
To test the game, Windows users copy dependency DLL's from the ''win32_deps\lib'' folder to the runtime binary folder.
 
+
[[Category: MG]]
To test the game, Windows users copy dependency dll's from the '''win32_deps\lib''' folder to the runtime binary folder.
 

Revision as of 11:15, 14 December 2011

This way of building MegaGlest is no longer supported. This page details how to perform cross platform compiling for MegaGlest with CodeBlocks. It is recommended to use VC2008+ instead of this approach if compiling on Windows. Project files for codeblocks are not always up to date and therefore not fully supported but rather for educational purposes. The cmake build system used by megaglest may produce codeblocks project files that work better than the project files included in these steps.

CodeBlocks Cross Platform IDE / Compiling

Check out the source code

Pick a subversion client, then get the project from MegaGlests' subversion repository.

Get the dependencies

Linux

Ensure you have the following library dependencies:

jpeg, lua5.1, png, SDL, openal, curl, xerces-c, ogg, vorbis, vorbisfile, vorbisenc, z, GL, GLU, SDLmain, ircclient

Some of the tools also require wx. On Debian like systems (such as Ubuntu and its derivatives), these packages will typically start with "lib", sometimes have a number added, and end with "-dev". For example, the development package for the xerces-c library may be called libxerces-c2-dev.

Windows

Download the Mingw build dependencies archive, then decompress the mingw dependency archive (using 7-zip) into the source folder. You should now see a source\win32_deps sub-folder with lots of stuff inside.

Install CodeBlocks

Install CodeBlocks for your platform.


Configure CodeBlocks

If you plan to build Windows binaries (Linux Cross Compile or Windows Mingw) configure CodeBlocks for Mingw.

Open the main workspace in CodeBlocks located in: mk/windoze/megaglest.workspace

Make a build

Select the build target (the dropdown at the top) from current available options:

  • Release Win32
  • Release Linux
  • Debug Win32
  • Debug Linux.

From the Build Menu option Select Rebuild Workspace.

Inspecting your builds

Linux targets

Linux targets compile into mk/linux and are called glest.bin, glest_editor, glest_g3dviewer etc.

Windows targets

If nothing goes wrong you will see glest_game.exe (and other binaries) in data/glest_game for Windows targets (where all the data content lives).

To test the game, Windows users copy dependency DLL's from the win32_deps\lib folder to the runtime binary folder.