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

### 4.21.5 Creating Crystal Space RPM's

Written by Vincent Knecht vknecht@club-internet.fr. Last updated 17 October 2005.

#### Creating Crystal Space RPM Packages

It is possible to build Crystal Space RPM's. This is useful if you want to distribute pre-built Crystal Space packages, or if you want to install Crystal Space on your machine using the normal package management facilities of your host. For this purpose, ``CS/scripts/rpm/cs.spec'` file is provided with Crystal Space.

#### Configure to Build RPM Packages

Building RPM packages involves a few settings, which are covered at the following page:

http://qa.mandriva.com/twiki/bin/view/Main/RpmHowTo#Preliminary_tasks

#### Building Your Own RPM's From Source Archive

Once you've set your system to build RPM packages as a regular user, perform the following steps:

1. Get Crystal Space sources archive (see section Where to Get Crystal Space) and put it in your ``rpm/SOURCES/'` directory.
2. Go into your ``rpm/SPECS'` directory.
3. Extract the ``CS/scripts/rpm/cs.spec'` file, and put it in your ``rpm/SPECS/'` directory. You can also get the latest ``cs.spec'` file at http://cvs.sourceforge.net/viewcvs.py/*checkout*/crystal/CS/scripts/rpm/cs.spec

       cd /home/user/rpm/SPECS
       tar xvjf /home/user/rpm/SOURCES/cs-current-snapshot.tar.bz2 \
            CS/scripts/rpm/cs.spec
       mv CS/scripts/rpm/cs.spec /home/user/rpm/SPECS
       rm -rf CS

4. Verify the source archive filename you downloaded is set in accordance with the filename part of the URL in ``Source:'` line of ``cs.spec'`, otherwise `rpm` won't be able to do his job.
5. Build the RPM's.
   - To build binary RPM's only, issue `rpmbuild -bb cs.spec`
   - To build source RPM's as well, issue `rpmbuild -ba cs.spec`

Build options are specified by using `--with` switch. The following values are supported:

- `--with perl` to build with Perl support.
- `--with debug` to build with debugging support.

So, to build all packages, with Perl support, use:

    rpmbuild -ba cs.spec --with perl

The binary RPM's should be under ``rpm/RPMS/'`, and the source RPM in ``rpm/SRPMS/'`.

The process creates four Crystal Space binary RPM packages:

- ``crystalspace'` base package. It provides plugins, data and configuration files.
- ``crystalspace-devel'` development package. It provides headers and static libraries needed for development.
- ``crystalspace-demos'` demonstration package. It provides applications showing Crystal Space capabilities.
- ``crystalspace-doc'` documentation package. It provides API and user manual documentation in HTML format.
- ``crystalspace-utils'` utilities package. It provides executables, data (especially map files) and configuration files.

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

This document was generated using texi2html 1.76.