Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - helios21

Pages: [1]
1
This is basically possible using the instructions at:

http://svn.code.sf.net/p/planeshift/code/trunk/docs/compiling.html

Yet I think some shortcuts or clarifications help with the process for doing it on a Debian based distro. I did this on Debian Sid. Will likely also work on Debian Jessie, maybe also Debian Wheezy, Linux Mint, certain Ubuntu versions, please report back.

Tested with PlaneShift Azure Spirit 0.6.1 as of today (revision 9358). This guide will use self-compiled client with same configuration as binary installed one. This will only work if configuration formats are compatible. It seems to work okay for 0.6.1 from source and 0.6.0 from binary install.

Reproduced from my command history. I may be missing something. Please comment.

Have fun with testing out new client prior to release :)


Set up development directory

Code: [Select]
export PSDEV=$HOME/PlaneShift/Development
(replace path as you see fit, donĀ“t use space in path, as I did not care for proper quoting below, and I am not sure whether all of the build process does)

Code: [Select]
mkdir $PSDEV
cd $PSDEV


Install necessary packages

Including NVidia Cg:

Code: [Select]
sudo apt-get install build-essential jam subversion
sudo apt-get install libcurl4-gnutls-dev libhunspell-dev libopenal-dev
sudo apt-get install nvidia-cg-dev
sudo apt-get install nvidia-cg-toolkit

NVidia CG was installed at my system already, so package names are a bit of guesswork. libcurl dev may be different for your Debian based distro. I may be missing some packages here, cause my Debian installation has usual dev packages installed already. Please comment if some package was missing for you.


Get sources

As in official compiling guide, except NVidia Cg, which can be installed more cleanly from Debian packages:

Code: [Select]
svn co -r 507 svn://svn.gna.org/svn/cal3d/trunk/cal3d cal3d
svn co -r 38938 http://svn.code.sf.net/p/crystal/code/CS/trunk cs
svn co https://svn.code.sf.net/p/planeshift/code/trunk planeshift

In case some checkout aborted due to network issues, cd to checked out directory and do svn up (including suitable -r argument to update to the exact revision!).


Compile

Basically as described in official documentation, see there for further explaination.

Cal3d
Code: [Select]
cd $PSDEV/cal3d

autoreconf --install --force
./configure --prefix=$PSDEV/cal3d
make -j4
make install

(adjust -j argument to number of cores in your machine)

Code: [Select]
export LD_LIBRARY_PATH=$PSDEV/cal3d/src/cal3d/.libs/:$LD_LIBRARY_PATH

Crystal Space

Code: [Select]
cd $PSDEV/cs

./configure --enable-debug --without-java --without-perl --without-python --without-3ds --with-cal3d=$PSDEV/cal3d

jam -aq libs plugins cs-config walktest

export CRYSTAL="$PSDEV/cs"


PlaneShift client
Code: [Select]
cd $PSDEV/planeshift
Unforce Breakpad usage by commenting out USE_BREAKPAD like

Code: [Select]
// #define USE_BREAKPAD
in src/client/crashreport.cpp.

(might be nice to add it later on to help devs)

Code: [Select]
./configure --enable-debug --with-cal3d=$PSDEV/cal3d

jam -aq client


Make is use official artwork and servers

Code: [Select]
cd $PSDEV
ln -s /opt/PlaneShift/art art

For me this worked better than any partial approach as described in official documentation. With symlinking it is also not needed to adapt psclient and VFS configuration and thus its possible to switch between binary installed client and from source compiled client easily.

Code: [Select]
cd $PSDEV/data
mv servers.xml servers.xml-localhost
ln -s /opt/PlaneShift/data/servers.xml servers.xml


Start client

I use the following script to set environment variables, replace $PSDEV with your path there.

Code: [Select]
#!/bin/bash

BASEPATH="$PSDEV"

export LD_LIBRARY_PATH="$BASEPATH/cal3d/src/cal3d/.libs/:$BASEPATH/cs/:$LD_LIBRARY_PATH"
export CRYSTAL="$BASEPATH/cs"

# If you want to start client automatically, uncomment the following

#OLDDIR="$PWD"

#cd planeshift

#./psclient

#cd "$OLDDIR"

If you want to start client manually – after script set environment variables:

Code: [Select]
cd planeshift
./psclient


Use pslaunch from binary client to change settings. You can tell client to use different settings directory. See official documentation for that.

Pages: [1]