original post
hi everybody,
i am just trying to compile planeshift on debian-testing (etch at the moment), following this guide.
i just wanted to note that libtool is missing in the list of packages needed.
also, i am trying to build it with the xorg-version of libglu instead of mesa. i will report the progress.
regard the postings that follow this one as personal notes, i will post an updated version of the guide here, when i\'m finished 
so here we go:
Debian Build GuideThis page gives a fairly detailed description on how to get a working client up and running in Debian. It gives instructions on how to get all the required tools and how to check out the source code and configure it. At the end there you will have a PlaneShift client and a PlaneShift updater application.
It got updated to use Debian/Etch with Xorg and GCC-4-binaries.
Set Working EnvironmentThe first thing you want to do is setup a working dir where you will do the builds. In this case I will use:
/home/andrew/development/You can use whatever directory you want but be sure to use the same one thoughout the document.
Now we need some packages, so do:
apt-get install bison-1.35 flex-old libmng-dev libmikmod2-dev libogg-dev libvorbis-dev zlib1g-dev libpng3-dev libjpeg62-dev libglu1-xorg-dev python2.3-dev autoconf automake1.8 libcurl3-dev jam libtoolI you want to use OpenAL for sound, you have to install
libopenal-dev[/], too.
Of course you can use another packaging-tool of your choice, like aptitude or synaptics.
Building Cal3d Library
Using the libcal3d-packages of Debian will not work at the moment. They\'re too old.
We need to build cal3d from source before we can start on Crystal Space. Cal3d is a library that is used for handling skeleton systems. This is a very nice system and can allow for fluid transformations between animations. This needs to be built/installed first because when we configure Crystal Space it has to find the cal3d libraries so it can know to build the sprcal3d plugin.
First step is to check out the source code from CVS:
/home/andrew/development$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cal3d login
/home/andrew/development$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cal3d co cal3d -D 2005-05-18 12:00:00You can do it without
-D 2005-05-18 12:00:00, if you want to be bleeding-edge, but this is not recommended.
Since cal3d is a library in development we probably don\'t want to \'install\' this one as root since there is a good possiblity it will change in the future. Instead we will \'install\' it into our working directory. This is done by using the
--prefix option when we configure it.
/home/andrew/development/cal3d$ ./autogen.sh
/home/andrew/development/cal3d$ ./configure --prefix=/home/andrew/development/cal3d
/home/andrew/development/cal3d$ make
/home/andrew/development/cal3d$ make installBecause we did not install cal3d system-wide, we need to make sure other things can find it. This is done using the
LD_LIBRARY_PATH:
export LD_LIBRARY_PATH=/home/andrew/development/cal3d/src/cal3d/.libs/:$LD_LIBRARY_PATHBuild Crystal SpaceUsing the Debian-Packages of crystalspace with Planeshift will not work at the moment. At least version 0.99 is needed.Crystal Space is the cross platform engine that we use for rendering and sound. First need to check out the code for it:
/home/andrew/development$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/crystal login
/home/andrew/development$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/crystal co CS -D 2005-05-18 12:00:00Now we can build it ( in debug mode ) and use the configure line to tell it where we installed the cal3d libraries. To do this just use the prefix line that was used for Cal3d above.
/home/andrew/development/CS$ ./configure --enable-debug --with-cal3d=/home/andrew/development/cal3d
/home/andrew/development/CS$ jam libs
/home/andrew/development/CS$ jam plugins
/home/andrew/development/CS$ jam cs-configWe should add the CRSYTAL environment variable to the .bashrc file so applications outside the Crystal Space tree know where to find the .so\'s:
export CRYSTAL=/home/andrew/development/CSBuild CELCEL is Crystal Space Entity Layer. It\'s a layer on top of Crystal Space that is used for entity and behaviour control. We need to add a couple more things to the .bashrc for CEL:
export CEL=/home/andrew/development/cel
export CSCONFPATH=/home/andrew/development/celNow check out the code and build.
/home/andrew/development$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cel login
/home/andrew/development$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cel co cel -D 2005-05-18 12:00:00Now we can build it ( in debug mode )
/home/andrew/development/cel$ ./configure --enable-debug
/home/andrew/development/cel$ jam -aBuild PlaneShiftFirst get the source code:
/home/andrew/development$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/planeshift login
/home/andrew/development$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/planeshift co planeshift -D 2005-05-18 12:00:00Configure and build now:
/home/andrew/development/planeshift$ ./autogen.sh
/home/andrew/development/planeshift$ ./configure --enable-debug --with-cal3d=/home/andrew/development/cal3d
/home/andrew/development/planeshift$ jam -aThis should have created the psclient and psupdater applications.
Get the ArtThe artwork for PlaneShift is not included in the CVS. However this is what the updater application is for. This connects to our update central site and downloads all the missing material. For linux all you need is updated art and data files. This is done by editing the updaterconfig.xml file and first setting the mirror to use. Our mirror is:
Now adjust the
section to only have art and data. You can now start the updater. On the first wrong the updater will look very bad since it does not yet have the art work. Nevertheless, let the updater run for a long time. There may be upwards of 200 MB of data to download.
Run the updater like: /home/andrew/development/planeshift$ ./updater --auto for the non-visual one.
Now you have to make sure PlaneShift.GUI.Imagefile is set to /planeshift/data/gui/releaselist.xml in planeshift.cfg. It should look like this:
PlaneShift.GUI.Imagefile = /planeshift/data/gui/releaselist.xml
Once this is complete PS should be ready to run. Be sure to create your account first at our registration page.