bw logo

Chapter 25. Overview

This part of the document contains technical information for extending and customising the BigWorld Server. It is part of a larger set of documentation describing the whole BigWorld system.

The intended audience is technical-MMOG developers with game-specific needs that require the efficiency of C++ extensions.

For API-level information, please refer to the API reference documentation.

25.1. Compilation

BigWorld uses Linux makefiles in order to compile C++ source code on Linux machines. Most source code directories will have a file called Makefile in the directory if they support compilation from Linux. Common build scripts are placed under the directory bigworld/src/build so they can be used by multiple projects.

To perform a compilation of all supported Linux components, perform the following from a command prompt:

$ cd bigworld/src
$ make

This will run the make process using the Makefile in each source directory to compile and generate the Linux binaries.

25.1.1. Output Directories

There are a number of locations where programs may be compiled to under Linux depending on their function. The following list outlines directories according to their contents.

  • bigworld/bin

    Server process binaries that are used for running a BigWorld server.

  • bigworld/bin/web

    This directory only contains the dynamic library used for Apache integration with the BigWorld server.

  • bigworld/src/lib/bin

    The location of statically compiled libraries generated from the source code located in bigworld/src/lib. These libraries are used to link into server processes.

  • bigworld/tools/server/bin

    All server tool binaries generated from C++ source are placed into this directory.