Marioko
30-09-2006 05:04:09
Hi, i recently download OgreODE, and its look really great, i downloaded the installers and everthing is ok, now how can i configure VS8.0 to use OgreODE??? I´m very very very newbie...
Thanks...
Having an already working solution to compile & run something that uses Ogre you must set (this is my way):
compiler options:
go to:
Project -> Properties -> Configuration Properties / C/C++ / General:
add to your "Additional Include Directories" these paths:
$(OGREODE_HOME)/ode/include/
$(OGREODE_HOME)/include
$(OGREODE_HOME)/prefab/include/
linker
go to:
Project -> Properties -> Configuration Properties / Linker / General:
add to your "Additional Library Directories" these paths:
$(OGREODE_HOME)/lib/$(ConfigurationName)
$(OGREODE_HOME)/prefab/lib/$(ConfigurationName)
EDIT: Then add the libs:
Project -> Properties -> Configuration Properties / Linker / Input:
add to your "Additional Dependencies" this:
OgreOde_Core.lib
OgreOde_Prefab.lib
ode.lib
Then set the OGREODE_HOME environmental variable to the path you have OgreOde installed, in my case:
D:\0auxi\c\apis\ogre\ogre-win32-v1-2-3\ogrenew\ogreode
I hope this helps
Marioko
30-09-2006 15:08:07
hey muchas gracias Luis, realmente me ayuda mucho tu detallada explicacion....
De seguro te estare preguntando otras cosas de OgreODE
Marioko
30-09-2006 16:08:55
Listo, ya pude compilar codigo para usar OgreOde, ahora como hago para que funcione el intellisense de VS8.0 con OgreODE.
-------------------------------------------------------------
Ready, i can compile code to use OgreOde, now how can i use VS8.0 intellisense with OgreODE???
.
PapiRauk
30-09-2006 16:32:50
Are you getting the 3 demos to work doing this?
I manage to get ode, ode_prefab and ode_core to build without errors but the demos give me lots of lnk errors no matter what i link.
PapiRauk
30-09-2006 16:41:54
I see now it's a problem with the tinyxml. At least I think so cause it's complaining over
SimpleScenes.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class OgreOde_Prefab::Ragdoll * __thiscall OgreOde_Prefab::OgreOdeDotLoader::loadRagdoll(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class OgreOde_Prefab::Ragdoll *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?loadRagdoll@OgreOdeDotLoader@OgreOde_Prefab@@QAEPAVRagdoll@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAV32@0@Z) referenced in function "public: void __thiscall SimpleScenes::createRagDoll(void)" (?createRagDoll@SimpleScenes@@QAEXXZ)
2>SimpleScenesApplication.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class OgreOde_Prefab::Ragdoll * __thiscall OgreOde_Prefab::OgreOdeDotLoader::loadRagdoll(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class OgreOde_Prefab::Ragdoll *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?loadRagdoll@OgreOdeDotLoader@OgreOde_Prefab@@QAEPAVRagdoll@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAV32@0@Z)
2>SimpleScenesApplication.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class OgreOde_Prefab::Vehicle * __thiscall OgreOde_Prefab::OgreOdeDotLoader::loadVehicle(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?loadVehicle@OgreOdeDotLoader@OgreOde_Prefab@@QAEPAVVehicle@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z) referenced in function "public: void __thiscall SimpleScenes_Buggy::changeCar(void)" (?changeCar@SimpleScenes_Buggy@@QAEXXZ)
2>E:\ogrenew\Samples\Common\bin\Debug/OgreOdeDemo_SimpleScenes.exe : fatal error LNK1120: 2 unresolved externals
Please help!
Bien! me alegro que te haya servido la explicación
como hago para que funcione el intellisense de VS8.0 con OgreODE.
Try closing the VS, delete the file
your_project_name.ncb and open again the solution. Now the intellisense should work...
I see now it's a problem with the tinyxml. At least I think so cause it's complaining over
tinyxml is in ogreode\tinyxml directory
PapiRauk
30-09-2006 19:58:36
I got some help from another thread:
http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=2069
Unfortunately i still can get the linking right. This is what i have for the additional libraries:
"..\..\..\..\lib\$(ConfigurationName)";
"..\..\..\..\prefab\lib\$(ConfigurationName)";
"..\..\..\..\..\OgreMain\lib\$(ConfigurationName)";
"$(OGREODE_HOME)\tinyxml\$(ConfigurationName)";
"$(OGREODE_HOME)\ode\lib\debuglib"
I get the same error no matter what i do when i try building the granturismogre demo:
5>GranTurismOgre.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class OgreOde_Prefab::Vehicle * __thiscall OgreOde_Prefab::OgreOdeDotLoader::loadVehicle(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?loadVehicle@OgreOdeDotLoader@OgreOde_Prefab@@QAEPAVVehicle@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z) referenced in function "public: void __thiscall GranTurismOgreFrameListener::changeCar(void)" (?changeCar@GranTurismOgreFrameListener@@QAEXXZ)
5>..\..\..\..\..\Samples\Common\bin\Debug/OgreOdeDemo_GranTurismOgre.exe : fatal error LNK1120: 1 unresolved externals
What are you guys doing that I'm missing?? Been at this for hours installing, linking, reinstalling and so on. Getting fed up with what is probably a simple link problem HEEEEELP
PapiRauk
30-09-2006 20:08:25
Ok, i'm getting closer. Guess i might as well keep posting in case other people have the same prob.
I was missing ..\..\..\..\ode\include\ode; in the additional include dirs. It was missing the last ode
now i'm getting
5>e:\ogrenew\ogreode\include\ogreodejoint.h(44) : error C2065: 'dJointTypePlane2D' : undeclared identifier
5>e:\ogrenew\ogreode\include\ogreodegeometry.h(24) : error C2065: 'dCapsuleClass' : undeclared identifier
5>e:\ogrenew\ogreode\include\ogreodegeometry.h(29) : error C2065: 'dHeightfieldClass' : undeclared identifier
5>e:\ogrenew\ogreode\include\ogreodegeometry.h(30) : error C2065: 'dConvexClass' : undeclared identifier
I read something about this in a previous post...to be continued.
Marioko
30-09-2006 21:12:51
Try closing the VS, delete the file your_project_name.ncb and open again the solution. Now the intellisense should work...
Yeah, it works.. thanks....
About the demo, i could compile all OgreOde perfectly, but i dont try if the demos works yet...
Are you getting the 3 demos to work doing this?
no, we do this to compile our own OgreOde based projects...
OgreOde demos should compile right without making any changes to the project...
Be sure to compile tinyxml, Ode, OgreOde_Core & OgreOde_prefab before trying to compile any demo.
Marioko
01-10-2006 03:27:08
hi againg
Can somebody say me, a simple, very simple example about OgreODE??
PapiRauk
02-10-2006 09:53:27
Well i keep getting the same vehicle and ragdoll error. lnk 2019.
would be nice to get the demos working before actualy using ode to eliminate future problems.
Using VC++2005express, ogresource Dagon, ogreode zip.
i run the scripts/vc8/ogreode_source.sln ( think it's called that, i'm at work and cant check right now ).
I place the OgreOde folder inside ogrenew ( E:\ogrenew\OgreOde ) the way i read in a thread that you're supposed to.
Should i be using the ogreode_sdk.sln even though i'm using ogreSource?
help help help! Getting seriously fed upp with building, I wanna develop
The ode, ode_core, ode_prefab and tinyxml compile right but demos don't work.
tuan kuranes
02-10-2006 12:45:36
place the OgreOde folder inside ogrenew ( E:\ogrenew\OgreOde ) the way i read in a thread that you're supposed to.
no inside the folder containing ogrenew. in your case, e:\
all people not using ogreode_vc8_SDK or ogreode_vc8_CVS :
You miss two file in your project OgreODe_prefab files, add them. (add all files in prefab/src folder and you should be ok.)
PapiRauk
02-10-2006 13:52:13
ok, i'll give it another shot when i get home. Thx for the reply. Looking forward to using ODE, so i'm not giving up
PapiRauk
02-10-2006 19:53:46
ok ppl, i finaly got it to work!!
to clarify, ogreode_prefab project hasn't got all it's files included in the project. OgreOdeDotLoader.cpp and OgreOdeObject.cpp. Just open the project and add them.
now...the output directories for the demos are ..\..\samples..bla bla
I have E:\OgreOde\prefab so it put my exe files relative to E: so i needed to change the output directory in project settings.
Next, the dll:s didnt go where they should so i copied them to my ogrenew/samples/common/debug folder including ode.dll.
After that i needed the media which i placed in the ogrenew/samples/media/ode folder and to make sure the programs find it, added to config.cfg the lines
[OgreOde]
FileSystem=../../../Media/ode
Since I had to change alot of stuff i might have done wrong from the begining but this post might be a help to peeps in the future.
Thx for the help
Sipaliwini
02-11-2006 16:54:38
I spent quite a bit of time trying to figure that link error out.
How about making the corrections to the VC8 script to avoid the trouble for the people working from Ogre source, as opposed to SDK ?
While you are at it, you'll need to change the post-build event for ode so that it copies into ../../../../Sample/common/bin instead of using the OGRE_HOME variable that people working from source tend not to use.
or do they ?
Otherwise thanks a lot for the maintaining
tuan kuranes
05-11-2006 13:19:43
what's correct folder layout when using ogre source?
\
\ogreode\
\ogrenew\