zeSoup
16-06-2013 12:34:45
Hello there folks,
so i've been trying to use OgreBullet (latest 2013-06-04) for nearly a week now and i do find myself unable to do it. (yeah i even poked alexey)
One may add that i'm somewhat new to the whole make, generate, install usage.
This is a horribly long time, even for me, but given that Ogre and Bullet themselves went considerably smoot i think a step by step introduction would help as most others refer to files i dont have, OS's i dont use or commands i cant execute.
So, what i'm intending to do in this thread is writing chain of commands (explained) that allow one to get OgreBullet up and running. Obviously many in here have no problems since it's somewhat easy. Well, at least i still fail
(If anyone finds something done wrong, please give me a shout, i'll fix the chain below accordingly)
PreOgreBullet
-> get and install Ogre
1.7.4 here. Propably gonna update soon but while i have no errors with ogre itself, lets keep it that way
-> get and install Bullet
bullet-2.81-rev2613
Make sure to build bullet with extras
OgreBullet
get a Copy from OgreBullet [https://bitbucket.org/alexeyknyshev/ogrebullet]
i myself felt attracted to the download button on the frontpage.
Obtain .zip file
Unzipp it to a nice area
right now there's a copy of the ogrebullet source. Buildingtime.
now running through quite some posts, some suggest running autogen.sh which sounds like a file - i dont have it.
But i do have cMake which runs, sounds reasonable. cMake is always a good idea in new source.
>cmake . -G "Unix Makefiles"
tell cmake (should be installed) to configure the local source. "." is "here", -G "Unix Makefiles" tells how.
This should not yet generate any errors.
> make -j4 [tell make to build the code, 4jobs at a time, ppl tend to like that]
Shouldnt make any errors aswell. two rather big files are beeing built.
> sudo make install
Copy[Install] the essential parts to where they should go.
Will copy the built objectfiles to their usual space.
/usr/local/lib/libOgreBulletCollisions.a
/usr/local/lib/libOgreBulletDynamics.a
Now all headerfiles will be Installed.
/usr/local/include/OgreBullet/*
Basically thats about as far as i made it.
It does sound horribly installed by now, altough i did find ppl on the forum having pkg-configs up and running for ogrebullet. no .pc file could be found for me, i guess they wrote 'em themselves.
Next up, i tried to compile a code with it. Basically importing a random file of ogrebullet, linking all libs to it and see if it works.
I added
#include <btBulletDynamicsCommon.h>
#include <Utils/OgreBulletCollisionsMeshToShapeConverter.h>
to my file, made a class inherit of StaticMeshToShapeConverter [propably bad idea but as i want to see if it works and mesh to shape is what i'm looking for i expect this to be a good idea]
now link some libs to it.
my Makefile contained `pkg-config ---libs -cflags OGRE OIS bullet` allready, i added everything that came to mind for ogrebullet.
-lOgreBulletDynamics
-lOgreBulletCollisions
-L/usr/local/include/bullet/BulletCollision/CollisionShapes/
-I/usr/local/include
-I/usr/local/include/OgreBullet/Dynamics
-I/usr/local/include/OGRE
-I/usr/local/include/bullet
-I/usr/local/include/OgreBullet/
-I/usr/local/include/OgreBullet/Collisions/
this may look a little bruteforceincluded. but lets face it, i'm trying to get it working for a while now, something just keep beeing wrong
output is as follows
/usr/local/lib/libOgreBulletCollisions.a(OgreBulletCollisionsMeshToShapeConverter.cpp.o): In function `OgreBulletCollisions::VertexIndexToShape::createConvex()':
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1420): undefined reference to `btConvexHullShape::btConvexHullShape(float const*, int, int)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1697): undefined reference to `btShapeHull::btShapeHull(btConvexShape const*)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x16bb): undefined reference to `btShapeHull::buildHull(float)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x16da): undefined reference to `btShapeHull::numTriangles() const'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1787): undefined reference to `btShapeHull::numIndices() const'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1834): undefined reference to `btShapeHull::numVertices() const'
so this would be bullet files.. my bullet is working, it's working fine, why would ogrebullet complain?
Any ideas?
Edit:
Problem Fixed
so i've been trying to use OgreBullet (latest 2013-06-04) for nearly a week now and i do find myself unable to do it. (yeah i even poked alexey)
One may add that i'm somewhat new to the whole make, generate, install usage.
This is a horribly long time, even for me, but given that Ogre and Bullet themselves went considerably smoot i think a step by step introduction would help as most others refer to files i dont have, OS's i dont use or commands i cant execute.
So, what i'm intending to do in this thread is writing chain of commands (explained) that allow one to get OgreBullet up and running. Obviously many in here have no problems since it's somewhat easy. Well, at least i still fail
(If anyone finds something done wrong, please give me a shout, i'll fix the chain below accordingly)
PreOgreBullet
-> get and install Ogre
1.7.4 here. Propably gonna update soon but while i have no errors with ogre itself, lets keep it that way
-> get and install Bullet
bullet-2.81-rev2613
Make sure to build bullet with extras
OgreBullet
get a Copy from OgreBullet [https://bitbucket.org/alexeyknyshev/ogrebullet]
i myself felt attracted to the download button on the frontpage.
Obtain .zip file
Unzipp it to a nice area
right now there's a copy of the ogrebullet source. Buildingtime.
now running through quite some posts, some suggest running autogen.sh which sounds like a file - i dont have it.
But i do have cMake which runs, sounds reasonable. cMake is always a good idea in new source.
>cmake . -G "Unix Makefiles"
tell cmake (should be installed) to configure the local source. "." is "here", -G "Unix Makefiles" tells how.
This should not yet generate any errors.
> make -j4 [tell make to build the code, 4jobs at a time, ppl tend to like that]
Shouldnt make any errors aswell. two rather big files are beeing built.
> sudo make install
Copy[Install] the essential parts to where they should go.
Will copy the built objectfiles to their usual space.
/usr/local/lib/libOgreBulletCollisions.a
/usr/local/lib/libOgreBulletDynamics.a
Now all headerfiles will be Installed.
/usr/local/include/OgreBullet/*
Basically thats about as far as i made it.
It does sound horribly installed by now, altough i did find ppl on the forum having pkg-configs up and running for ogrebullet. no .pc file could be found for me, i guess they wrote 'em themselves.
Next up, i tried to compile a code with it. Basically importing a random file of ogrebullet, linking all libs to it and see if it works.
I added
#include <btBulletDynamicsCommon.h>
#include <Utils/OgreBulletCollisionsMeshToShapeConverter.h>
to my file, made a class inherit of StaticMeshToShapeConverter [propably bad idea but as i want to see if it works and mesh to shape is what i'm looking for i expect this to be a good idea]
now link some libs to it.
my Makefile contained `pkg-config ---libs -cflags OGRE OIS bullet` allready, i added everything that came to mind for ogrebullet.
-lOgreBulletDynamics
-lOgreBulletCollisions
-L/usr/local/include/bullet/BulletCollision/CollisionShapes/
-I/usr/local/include
-I/usr/local/include/OgreBullet/Dynamics
-I/usr/local/include/OGRE
-I/usr/local/include/bullet
-I/usr/local/include/OgreBullet/
-I/usr/local/include/OgreBullet/Collisions/
this may look a little bruteforceincluded. but lets face it, i'm trying to get it working for a while now, something just keep beeing wrong
output is as follows
/usr/local/lib/libOgreBulletCollisions.a(OgreBulletCollisionsMeshToShapeConverter.cpp.o): In function `OgreBulletCollisions::VertexIndexToShape::createConvex()':
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1420): undefined reference to `btConvexHullShape::btConvexHullShape(float const*, int, int)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1697): undefined reference to `btShapeHull::btShapeHull(btConvexShape const*)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x16bb): undefined reference to `btShapeHull::buildHull(float)'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x16da): undefined reference to `btShapeHull::numTriangles() const'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1787): undefined reference to `btShapeHull::numIndices() const'
OgreBulletCollisionsMeshToShapeConverter.cpp:(.text+0x1834): undefined reference to `btShapeHull::numVertices() const'
so this would be bullet files.. my bullet is working, it's working fine, why would ogrebullet complain?
Any ideas?
Edit:
Problem Fixed