PlaneShift
Support => Technical Help: Problems BEFORE entering the game => Topic started by: tom on February 08, 2005, 07:53:31 pm
-
Hi all linux lovers
Was anyone able to run planeshift (3006) on linux? For several days I try to get it work with no luck. I think I will soon give it up. Please help me.
I still have the wrong version problem when I try to connect to the server. update_code does not help... It just leads to a compile error. ...
What can I do ? Can I set the version by hand?
Thanks... for you reply
-
i brought ps on linux (fedora core 3) to run. therefore i used the ps-rpms:
http://www.planeshift3d.com/wbboard/thread.php?threadid=12682&boardid=33&sid=1e006487165962aa035c137da34b47b7
unfortunaltely my updaters version is too old and the linux updater cant update himself automatically so i have to update him manually. but i cant find the file to replace the old updater with. = {
see my post:
http://www.planeshift3d.com/wbboard/thread.php?threadid=14443&boardid=17&styleid=3&sid=52c4c66edc6ae7515a93e3986f70d3d0
-
At the moment there is no binary update available for linux through the updater. For linux the updater is only good for getting updated art and content. So for you you have to build/update from source to get an updated client.
Part of my todo list is to improve the PS build files to allow you to build only the client. There are also people working on linux installers and binaries.
If you do have compile errors I need specific information on what errors you are getting and I may be able to help.
-
Mmmhh.....
I downloaded the linux client version from http://www.planeshift itself. This updater version workes fine, at least it updates some files. But the \"you are running the wrong version\" does not disappear.
-
Thanks a lot for your replies
okey here we go.
This is the error I get.
C++ ./out/linuxx86/optimize/libs/csutil/parasiticdatabuffer.o
In file included from libs/csutil/parasiticdatabuffer.cpp:21:
./include/csutil/parasiticdatabuffer.h:117: error: expected identifier before \',\' token
./include/csutil/parasiticdatabuffer.h:118: error: ISO C++ forbids declaration of `SCF_DECLARE_IBASE_POOLED_EXTERN\' with no type
./include/csutil/parasiticdatabuffer.h:118: error: ISO C++ forbids declaration of `parameter\' with no type
./include/csutil/parasiticdatabuffer.h:130: error: expected `)\' before \'*\' tokenlibs/csutil/parasiticdatabuffer.cpp:27: error: `class csParasiticDataBufferPooled::Pool\' has not been declared
libs/csutil/parasiticdatabuffer.cpp:27: error: ISO C++ forbids declaration of `Pool\' with no type
libs/csutil/parasiticdatabuffer.cpp: In function `int Pool()\':
libs/csutil/parasiticdatabuffer.cpp:27: error: `pool\' undeclared (first use this function)
libs/csutil/parasiticdatabuffer.cpp:27: error: (Each undeclared identifier is reported only once for each function it appears in.)
libs/csutil/parasiticdatabuffer.cpp:27: warning: no return statement in function returnin
-
Sorry this was not the first error in the logfile ...
here is another
C++ ./out/linuxx86/optimize/libs/csgfx/imagecubemapmaker.o
In file included from ./include/csgfx/imagecubemapmaker.h:32,
from libs/csgfx/imagecubemapmaker.cpp:22:
./include/csgfx/imagebase.h:79: error: `iDataBuffer\' was not declared in this scope
./include/csgfx/imagebase.h:79: error: template argument 1 is invalid
./include/csgfx/imagebase.h:79: error: ISO C++ forbids declaration of `GetRawData\' with no type
./include/csgfx/imagebase.h:80: error: `csImageType\' does not name a type
In file included from libs/csgfx/imagecubemapmaker.cpp:22:
./include/csgfx/imagecubemapmaker.h:87: error: `iDataBuffer\' was not declared in this scope
./include/csgfx/imagecubemapmaker.h:87: error: template argument 1 is invalid
./include/csgfx/imagecubemapmaker.h:87: error: ISO C++ forbids declaration of `GetRawData\' with no type
./include/csgfx/imagecubemapmaker.h:88: error: `csImageType\' does not name a type
libs/csgfx/imagecubemapmaker.cpp: In constructor `csImageCubeMapMaker::csImageCubeMapMaker(iImage*)\':
libs/csgfx/imagecubemapmaker.cpp:40: error: \'struct iImage\' has no member named \'HasSubImages\'
libs/csgfx/imagecubemapmaker.cpp:41: error: \'struct iImage\' has no member named \'GetSubImage\'
libs/csgfx/imagecubemapmaker.cpp: In member function `virtual const char* csImageCubeMapMaker::GetRawFormat() const\':
libs/csgfx/imagecubemapmaker.cpp:135: error: \'struct iImage\' has no member named \'GetRawFormat\'
libs/csgfx/imagecubemapmaker.cpp: At global scope:
libs/csgfx/imagecubemapmaker.cpp:138: error: `iDataBuffer\' was not declared in this scope
libs/csgfx/imagecubemapmaker.cpp:138: error: template argument 1 is invalid
libs/csgfx/imagecubemapmaker.cpp:139: error: ISO C++ forbids declaration of `GetRawData\' with no type
libs/csgfx/imagecubemapmaker.cpp: In member function `virtual int csImageCubeMapMaker::GetRawData() const\':
libs/csgfx/imagecubemapmaker.cpp:141: error: \'struct iImage\' has no member named \'GetRawData\'
g++ -c -o ./out/linuxx86/optimize/libs/csgfx/imagecubemapmaker.o -I. -I./include -I./include -Wall -Wno-unknown-pragmas -pipe -march=i586 -I/usr/local/include -fno-exceptions -O3 -fomit-frame-pointer -ffast-math -fPIC libs/csgfx/imagecubemapmaker.cpp
...failed C++ ./out/linuxx86/optimize/libs/csgfx/imagecubemapmaker.o...
-
Odd, I dont have libs/csgfx/imagecubemapmaker.cpp in my CVS source tree of Crystal Space, it must have been added between when I last cvs update\'d the tree ( Feb 5th ) and now.
Given its a new library to CrystalSpace perhaps there are issues with it yet that are causing your compile problem. Its not essential as I am running without it just fine. Do a cvs update thus:
cvs update -dP
from the top level Crystal Space directory. This should be the same directory that you have set in your CRYSTAL environment variable.
This command will retreive the latest updates, then try recompiling this as usual with
./configure --with-libcal3d=/path/to/libcal3d
jam libs
jam plugins
jam cs-config
before going on to build cel and then planeshift itself.
If the latest CVS is still not compilable then try retreiving the tree from Feb 5th, I have had no trouble compiling any planeshift components from the source snapshot I made during this day.
And when its all built and ready make sure you run the updater to grab all necessary art before starting psclient!
-
Thanks for the answer
once again I checked it all out an compiled it...
This time I was able to compile Crystal Space... YEAS...
Maybe they corrected a problem.... no idea... I am quite sure I did it the same way as last time...
unfortunately I was not able to update planeshift .....
cvs [update aborted]: unrecognized auth response from cvs.sourceforge.net: M PserverBackend::PserverBackend() Connect (Connection refused)
Seems that sourceforge has a problem with the anonymeous cvs ???
But at least I was able to update and compile CS,cel,cal3d ..... So it was a big step forward... :-)
Hope cvs works soon ... and that I can finaly play planeshift on linux...
thanks for all your help
-
This thread in the CB Bugs forums indicates that there is an outage of CVS service on the sourceforge website for a number of projects at the present time. Unfortunately, planeshift CVS is affected by this outage.
http://www.planeshift3d.com/wbboard/thread.php?threadid=14519&boardid=33&styleid=3
Sourceforge Status page reporting this issue is here:
http://sourceforge.net/docman/display_doc.php?group_id=1&docid=2352
Try again in a day or two
-
Tharizdun, you should be aware that with a clean CVS build of recent (Feburary 15, 2005) cal3d, some CrystalSpace Plugins may not compile.
For instance, the sprcal3d plugin (./CS/out/linuxx86/optimize/plugins/mesh/sprcal3d/object/sprcal3d.o) needs to have the CalCoreMesh * on 366 of sprcal3d.cpp and the following addCoreMesh(coremesh) on 369 changed to CalCoreMeshPtr and addCoreMesh(coremesh.get()) respectively.
There are at least two other places this same error has been made in this file alone. In both cases, substituing the RefPtr and the pointer getter will fix the problem. However, since the getter returns a const pointer, some badly behaved code may still get in trouble when playing with that pointer\'s value.
After those fixes, CrystalSpace should compile fine.
For someone who doesn\'t develop C/C++ software, knowing how to fix problems with RefPtr (http://www.elcel.com/docs/opentop/API/ot/RefPtr.html) based C++ code outside of the original developer\'s environment can be a bit tricky, if not neigh impossible.
-
Hmm, you\'re right, cal3d cvs is causing problems at the moment. I guess these things happen when you are using the dev trees of 4 different projects all at once, its rare to have them all working together flawlessly.
The official 0.10 release of cal3d ( cal3d-full-0.10.0.tar.bz2 ) released January 13, 2005 works though, it compiles fine and the CrystalSpace configure script detects it and is happy to go with it. All the libraries and plugins compile fine, as do cel/ps.
So the solution for the moment is to use the official 0.10 of cal3d until the bugs you mentioned are fixed in CVS.