[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

### 2.4.1 Unix

This section covers all of the Unix-style platforms supported by Crystal Space, including GNU/Linux, FreeBSD, NetBSD, Solaris, etc.

It is also possible to install Crystal Space using packaging systems, See section Creating Crystal Space RPM's.

Crystal Space's X11 canvas optionally supports the MIT Shared Memory Extension (MIT-SHM). This makes Crystal Space run much faster if your server supports it. The Crystal Space configuration script will detect this extension automatically and use it if present.

A note of caution: Take care when obtaining the Crystal Space source code to ensure that the line-terminators are in Unix format (a single linefeed should terminate each line). This is an especially important consideration when transporting the code from Windows to Unix. Although many Unix tools deal gracefully with Windows line-terminators (a carriage-return follwed by a linefeed), not all tools do so, and may emit apparently inexplicable error messages when encountering files with Windows line-terminators. The official distributions of Crystal Space, including the stable releases and the SVN snapshots, are packaged with Unix line-terminators, which are acceptable on all supported platforms. These virgin packages themselves can be transported between Windows and Unix safely

#### Compiling on Unix

Crystal Space can be built with either ``make'` or Jam (see GettingJam). Both tools work equally well. In the examples below, wherever ``make -k'` is used, you can instead substitute ``jam'` (without the ``-k'`) if you so desire.

You first need to configure the project for your platform. You do this by running the configuration script. For example, from within the ``CS'` directory:

    ./configure

If you wish to build with debugging information enabled, use this command, instead:

    ./configure --enable-debug

For a list of useful configuration options, invoke:

    ./configure --help=short

If the Crystal Space source directory is read-only, if it is shared between several developers, or if you simply dislike building a project within its source tree, you can instead configure and build from a different directory. For instance:

    mkdir $HOME/builddir
    cd $HOME/builddir
    /path/to/CS/configure --enable-debug

Now, you can actually build the entire project:

    make -k all

Alternately, if you have Jam installed:

    jam all

The build process will create an executable for each demonstration program or tool, and a dynamic-load-library for each plugin module (with extension ``.so'` on GNU/Linux and most Unix platforms). Plugin modules include 3D renderers, 2D canvases, 3D engine, etc.

Finally, if you want to utilize Crystal Space as a software development kit (SDK), you can install it and then clean up the detritus of the build process:

    make install
    make distclean

You can now try running the ``walktest'` demonstration. See section Quick Start.

#### Renderer Selection

The OpenGL renderer is used by default when you run Crystal Space programs. To select a different renderer, such as the software renderer, you can edit your local configuration file ``$HOME/.crystalspace/Global.cfg'`. Add the following line to select the software renderer for all applications:

    System.Plugins.iGraphics3D = crystalspace.graphics3d.software

Alternately, you can choose the software renderer from the command-line:

    ./walktest -video=software

The software renderer interacts with X11, placing output on the display indicated by the ``DISPLAY'` environment variable.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ]

This document was generated using texi2html 1.76.