ClanLib SDK

ClanLib Overview Documentation

Introduction

ClanLib is a cross platform toolkit library with its primary focus on game creation. The library is Open Source and free for commercial use, under the ClanLib License.

The library is split into a number of sub-libraries, each providing different classes of functionality. The library is deliberately built so that the different parts try not to put more external dependencies than they absolutely have to. With the exceptance of clanCore, you can pretty much cherry pick which libraries and classes you find useful, and avoid using the rest. Because of this, you can easilly use ClanLib for non-gaming purposes, or mix ClanLib classes with other libraries without getting forced a load of things upon you that you do not need.

Getting Started

The first step is to download ClanLib and all its dependency libraries. Get the latest version of the ClanLib 2.0 series from clanlib.org and download the binaries for your compiler and platform. All these files can be found here.

The next step is to ensure that your build environment is set up and ready to compile ClanLib. In principle, it is a matter of having the dependency libraries installed in directories known by your compiler, but for newcomers that have less experience with the build environments of their platform and/or compilers and how ClanLib use them, we have the following guides to help you with this:

After you have set up your build environment and successfully built ClanLib, you are ready to start creating your applications. In general, ClanLib is used by simply constructing the objects you require. The only prequisites is that for each library you need to first construct a CL_SetupXX object which performs any initializations and deinitializations required for the library. ClanLib supports that you use the normal platform specific main functions, such as main or WinMain, but a more common approach is to use the cross platform application main provided by ClanLib. We have a few simple examples here on how very simple "Hello World" ClanLib applications can look like:

Getting Help

If you are having any problems with ClanLib or find some documentation to be limited about a certain topic you can always ask in our forums. These documents might help you as well:

Module Overviews

For information about specific parts of ClanLib, see the module overview documents below.