Crystal Space
Welcome, Guest. Please login or register.
April 25, 2014, 09:30:53 am

Login with username, password and session length
Search:     Advanced search
8990 Posts in 2037 Topics by 7635 Members
Latest Member: Separat1989
* Home Help Search Login Register
+  Crystal Space
|-+  Associate Projects
| |-+  CEL Discussion
| | |-+  celtst fails to run.
« previous next »
Pages: [1] Print
Author Topic: celtst fails to run.  (Read 3386 times)
Winter Knight
Posts: 21

View Profile
« on: October 13, 2006, 11:27:51 pm »

Debian Sarge
Crystal/Cel version: psuedo-stable
gcc 3.4
PNY Verto GeForce FX 5500 AGP 8x
Latest Debian stable nvidia driver

I already compiled CS and sort of got it to start working. I then compiled CEL. I made sure the environment variables CRYSTAL and CEL were set properly. I then tried to run celtst. I got the following:

wk@ALPHA:~/cel$ ./celtst
DEBUG: Sound System: Software Renderer Initializing..
DEBUG: Sound System: Configured for driver []
Sound System: OSS driver for software sound renderer initialized.

  could not load plugin 'crystalspace.mesh.loader.factory.sprite.cal3d'
crystalspace.maploader.parse.meshfact:  Error loading plugin 'crystalspace.mesh.loader.factory.sprite.cal3d'!
[node: library,meshfact(name=test),plugin]
cel.pfmesh.loadmeshfactory:  Error loading mesh object factory or library 'cally.cal3d'!

  <renderpriorities> is no longer supported!
[node: world]
Load TYPE plugin crystalspace.mesh.object.haze
Print: Hello world!
Print: Hello world (small)!
Segmentation fault

I looked in the data directory and found cally.cal3d and a cally directory. vfs.cfg seems to be set correctly. Why won't the test application run after a basic compile? I didn't "install" cel. CEL is set to "home/wk/cel" But I did try to install. It didn't work either.

I looked on this forum, and it seems a cal3d library has to be installed? I found no mention of that in the docs. Where do I download it? How do I install it? Or does that not apply here?

Also, I tried to compile the source code in apps/celtest/, and my application got further. Here is the errors from when I compile it manually:

wk@ALPHA:~/cel/apps/celtest$ ./celtest -relight
DEBUG: Sound System: Software Renderer Initializing..
DEBUG: Sound System: Configured for driver []
Sound System: OSS driver for software sound renderer initialized.
cel.persistence:  Error opening file 'basic_level.xml'!
celtest:  Error loading level 'basic_level.xml' at '/cellib/lev'!

basic_level.xml is there. So are basic_entities and basic_world.

What could be wrong?
Thank you.

UPDATE: When I copy $CEL/vfs.cfg and $CEL/data/*(recursive) into $CEL/apps/celtest, then when I compile celtest myself I get the same errors I do when I try to run $CEL/celtst.

Also, I discoverd cal3d. It is an external library not mentioned as required in the CEL docs. I installed it. But it doesn't help. Also, I noticed that cal3d is included in the CS plugin directory, but not the CEL plugin directory. I still can't get this to work.

Thank you for any help.
« Last Edit: October 14, 2006, 12:27:00 am by Winter Knight » Logged
Winter Knight
Posts: 21

View Profile
« Reply #1 on: October 14, 2006, 03:25:41 am »

Lots more to report:

1) Downloaded and insatlled cal3d. The latest revision is not compilable due to configuration bugs. Revision 425 is compilable though. It is only three weeks old, and is plenty "sufficient" enough for psuedo stable crystal.

2) When jamming crystal, I get errors installing cal3d. Here is an excerpt:
C++ ./out/linuxx86/optimize/plugins/mesh/sprcal3d/object/sprcal3d.o
plugins/mesh/sprcal3d/object/sprcal3d.cpp: In member function `virtual void cspluginSprCal3d::csSpriteCal3DMeshObjectFactory::HardTransform(const csReversibleTransform&)':
plugins/mesh/sprcal3d/object/sprcal3d.cpp:658: error: 'class CalCoreSkeleton' has no member named 'getListRootCoreBoneId'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:659: error: 'class CalCoreSkeleton' has no member named 'getListRootCoreBoneId'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: `CalTransform' undeclared (first use this function)
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: (Each undeclared identifier is reported only once for each function it appears in.)
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: template argument 1 is invalid
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: template argument 2 is invalid
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: invalid type in declaration before '=' token
plugins/mesh/sprcal3d/object/sprcal3d.cpp:679: error: 'class CalCoreAnimation' has no member named 'getPoses'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:680: error: request for member `size' in `poses', which is of non-class type `int'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:684: error: 'class CalCoreSkeleton' has no member named 'getListRootCoreBoneId'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:685: error: 'class CalCoreSkeleton' has no member named 'getListRootCoreBoneId'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:688: error: 'class CalCoreAnimation' has no member named 'getTrackAssignment'
plugins/mesh/sprcal3d/object/sprcal3d.cpp:692: error: `tf' undeclared (first use this function)
plugins/mesh/sprcal3d/object/sprcal3d.cpp:692: error: invalid types `int[unsigned int]' for array subscript
plugins/mesh/sprcal3d/object/sprcal3d.cpp:702: error: 'class CalCoreAnimation' has no member named 'setPoses'

    g++ -c -o ./out/linuxx86/optimize/plugins/mesh/sprcal3d/object/sprcal3d.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 -I/opt/
l3d-svn-r425/include  plugins/mesh/sprcal3d/object/sprcal3d.cpp

...failed C++ ./out/linuxx86/optimize/plugins/mesh/sprcal3d/object/sprcal3d.o ...
...skipped for lack of <plugins!mesh!sprcal3d!object!>sprcal3d.o...

getListRootCoreBoneId is not a valid function mentioned in any of cal3d header files. There is a similarly spelled line in cal3d_wrapper.h, but it is commented out:
//  CAL3D_WRAPPER_API std::list<int>& CalCoreSkeleton_GetListRootCoreBoneId(struct CalCoreSkeleton *self);
That is one line.

That is as far as I am so far with crystal bugs. Can anyone confirm or disaffirm whether or not installing cal3d is required in order to run celtst in C.E.L? Thank you.
Winter Knight
Posts: 21

View Profile
« Reply #2 on: October 14, 2006, 03:40:41 am »

This concludes this thread.

I am almost positive that installing a recent revision of cal3d is required for celtst to run. pseudo-stable crystal will not install with latest cal3d, or revision 425 of cal3d. However, if you apply a patch to crystal, which can be found on this page:
then you can install it.

Whew! That is a lot of work to get the test apps to run! This really should be in the docs.
Posts: 20

View Profile
« Reply #3 on: October 16, 2006, 08:42:12 am »

I don't think the latest version of cal3d works with the pseudo-stable (without the sprcal3d hack), but it works with the latest svn. This was one of the reasons why I switched to svn. Everything just seems to work better and everyone else is using it. (peer pressure Smiley )

cal3d is definitely needed for celtst. It is the library that supports skeletal animation. As you could probably see from the files, the cally model is in cal3d format.

Did you recompile CS and CEL after installing cal3d? When you run the CS ./configure, does it find cal3d?

You could also try to run the cal3d miniviewer to check if cal3d is working.

(This is just some random guesses. Most of the time I don't know what I'm talking about. Wink If you got everything to work, just ignore all the above.)
Jr. Member
Posts: 53

View Profile
« Reply #4 on: July 02, 2007, 01:52:38 pm »

use to fetch the cal3d you should use with cs.

Also, its preferable to use genmeshanim for skeletal animation over cal3d. genmeshanim is in cs internal skeletal animation.
Pages: [1] Print 
« previous next »
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
Page created in 6.501 seconds with 15 queries.