Crystal Space
Welcome, Guest. Please login or register.
April 20, 2014, 09:54:14 am

Login with username, password and session length
Search:     Advanced search
8990 Posts in 2037 Topics by 7598 Members
Latest Member: Tarafigueroa
* Home Help Search Login Register
+  Crystal Space
|-+  Crystal Space Development
| |-+  Support
| | |-+  Compile ode, crystalSpace and CEL problem
« previous next »
Pages: [1] Print
Author Topic: Compile ode, crystalSpace and CEL problem  (Read 2128 times)
Neoberserker
Newbie
*
Posts: 7



View Profile WWW Email
« on: December 13, 2008, 02:08:43 pm »

Hi,

i want to compile crystalSpace and CEL with ODE support. I want to develop a game with physics for study. I work on a gentoo linux, build-environment automake and jam is installed.


That is what i have done:

get ode source, version 0.8
Code:
svn co https://opende.svn.sourceforge.net/svnroot/opende/trunk opende

i downloaded crystalspace-src-1.2.1 and cel-src-1.2.1.

first configure and compile ODE
Code:
sh autogen.sh
./configure  --with-trimesh=opcode
make -j4
make install
all done, no problem

second, configure and compile crystalspace
Code:
./configure --with-ode="/opt/ode/opende"

from the configuration output:
Quote
.
.
.
checking for ode-config... ode-config
checking for libode... yes
checking if libode is built with OPCODE support... yes
checking if libode is sufficiently recent... yes
.
.
.

then compiled it
Code:
jam -j4
everythings works without problems


third: Compile CEL
Code:
export CRYSTAL="/opt/cs_src"
./configure
jam -j4

It compiles, everything seems fine. I can start demos with celstart (i.e. celdemo.celzip, shadertest.celzip), but when i want to start the physicsdemo.celzip i got the error that ode is not found.
Code:
crystalspace.pluginmgr.loadplugin:
  could not load plugin 'crystalspace.dynamics.ode'

i found no tutorial or wiki entry that shows how i had to build ode, crystalspace and cel together. Only in README and INSTALL files there was sometimes a hint.

Can someone help me ? Don't know what is going wrong . . . any suggestions ?

thanks
Sebastian
« Last Edit: December 13, 2008, 08:00:47 pm by Neoberserker » Logged

---------------------------------------
Linux, CG and photographie
http://www.neoBerserker.de
Neoberserker
Newbie
*
Posts: 7



View Profile WWW Email
« Reply #1 on: December 13, 2008, 08:15:56 pm »

when compiling crystalspace with jam i found the following error:
Code:
LinkPlugin odedynam.so
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/local/lib/libode.a(box.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libode.a: could not read symbols: Bad value
collect2: ld gab 1 als Ende-Status zurück

    g++ -Wl,--as-needed -o odedynam.so ./out/linux/optimize/plugins/physics/odedynam/odedynam.o  -lm -ldl -lnsl -L/usr/local/lib -Wl,-z,defs -Wl,--warn-unresolved-symbols -g2 -shared ./out/linux/optimize/libs/libcrystalspace-1.2.a -lpthread -lz -L/usr/local/lib -lode -lm -ldl -lnsl -L/usr/local/lib -Wl,-z,defs -Wl,--warn-unresolved-symbols -g2 \
      -Wl,-soname,odedynam.so
 
...failed LinkPlugin odedynam.so ...

there is no build error with ode, just some warnings:
Code:
MkDir1 ./out/linux/optimize/plugins/physics/odedynam
C++ ./out/linux/optimize/plugins/physics/odedynam/odedynam.o
plugins/physics/odedynam/odedynam.h:108: Warnung: »struct CS::Plugin::odedynam::ColliderContainer« hat virtuelle Funktionen aber nicht-virtuellen Destruktor
plugins/physics/odedynam/odedynam.cpp: In member function »void CS::Plugin::odedynam::csODECollider::AddMassToBody(bool)«:
plugins/physics/odedynam/odedynam.cpp:966: Warnung: »dMassSetCappedCylinder« ist veraltet (deklariert bei /usr/local/include/ode/mass.h:84)
plugins/physics/odedynam/odedynam.cpp:966: Warnung: »dMassSetCappedCylinder« ist veraltet (deklariert bei /usr/local/include/ode/mass.h:84)
plugins/physics/odedynam/odedynam.cpp: In member function »virtual bool CS::Plugin::odedynam::csODECollider::CreateMeshGeometry(iMeshWrapper*)«:
plugins/physics/odedynam/odedynam.cpp:1046: Warnung: »__comp_ctor « ist veraltet (deklariert bei ./include/csgeom/trimesh.h:292)
plugins/physics/odedynam/odedynam.cpp: In member function »virtual csOrthoTransform CS::Plugin::odedynam::csODEJoint::GetTransform()«:
plugins/physics/odedynam/odedynam.cpp:2485: Warnung: Aufzählungswert »CS_ODE_JOINT_TYPE_UNKNOWN« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2485: Warnung: Aufzählungswert »CS_ODE_JOINT_TYPE_SLIDER« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2485: Warnung: Aufzählungswert »CS_ODE_JOINT_TYPE_CONTACT« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2485: Warnung: Aufzählungswert »CS_ODE_JOINT_TYPE_FIXED« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2485: Warnung: Aufzählungswert »CS_ODE_JOINT_TYPE_AMOTOR« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp: In member function »virtual ODEJointType CS::Plugin::odedynam::csODEJoint::GetType()«:
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypeNone« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypeNull« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypeLMotor« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypePlane2D« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypePR« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypePU« wird nicht von switch behandelt
plugins/physics/odedynam/odedynam.cpp:2831: Warnung: Aufzählungswert »dJointTypePiston« wird nicht von switch behandelt

what does the link error means ?
Logged

---------------------------------------
Linux, CG and photographie
http://www.neoBerserker.de
Neoberserker
Newbie
*
Posts: 7



View Profile WWW Email
« Reply #2 on: December 13, 2008, 11:41:11 pm »

one problem was that i have used the trunk version, not version 0.8.

Now i checkout ode with:
Code:
svn co https://opende.svn.sourceforge.net/svnroot/opende/tags/0.8 opende

And then there is no problem with compiling crystalspace with ode. From the compile log:
Code:
MkDir1 ./out/linux/optimize/plugins/physics/odedynam
C++ ./out/linux/optimize/plugins/physics/odedynam/odedynam.o
.
.
.
LinkPlugin odedynam.so
ObjTagMetaData odedynam.so
SplitDebugInfo1 odedynam.so

After compile there is a odedynam.so in crystalspace folder. Therefore i think crystalspace with ode is ok now.

Logged

---------------------------------------
Linux, CG and photographie
http://www.neoBerserker.de
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 4.182 seconds with 15 queries.