Page 1 of 1

Ogre link problem with ceguilua0.6

Posted: Thu Apr 03, 2008 12:51
by kidcdf
the original topic in ogre forum:
http://www.ogre3d.org/phpBB2/viewtopic.php?t=40337


I use CEGUI0.6 SDK, use OGRE 1.47 SDK,when I use CEGUILua, run the app,and " can not find entry in CEGUIbase_d.dll" occur.
the following codes are link infos:

#pragma comment (lib,"OgreMain_d.lib")
#pragma comment (lib,"OgreGUIRenderer_d.lib")
#pragma comment (lib,"OIS_d.lib")
#pragma comment(lib,"CEGUIBase_d.lib")
#pragma comment(lib,"CEGUILua_d.lib")
#pragma comment(lib,"tolua++_d.lib")
#pragma comment(lib,"lua_d.lib")

I find that in CEGUI 0.6 lua sample,the link infos are:
#pragma comment(lib,"CEGUIBase_static_d.lib")
#pragma comment(lib,"CEGUILua_static_d.lib")

when I change mine codes to these things,the link error happened:

error LNK2019: __imp__timeGetTime@0, "public: static double __cdecl CEGUI::SimpleTimer::currentTime(void)" (?currentTime@SimpleTimer@CEGUI@@SANXZ) CEGUIBase_Static_d.lib

then I add link "winmm.lib",compiling is successful,but running's problem still exists,why???!!!

Posted: Thu Apr 03, 2008 13:37
by CrazyEddie
Hi, and welcome :)

Which file are those #pragma statements in? I did a quick grep and found nothing like it :?

You should only use those static libs when creating a statically linked project - most people will not be doing this and should not have to use those static libs. Since you are getting errors relating to the CEGUIBase dll, it seems that you are not creating a statically linked project (or most likely you are also referencing the non-static version of the libs in addition to the static versions).

In addition, unless I am very much mistaken, you can not use the unmodified Ogre 1.4.7 SDK with the 0.6.0 CEGUI release, since the CEGUI renderer module it contains was compiled against the 0.5.0 release of CEGUI. Therefore, in order to use Ogre with the latest CEGUI 0.6.0 release, you will need to obtain the Ogre source and compile an updated renderer module against the newer CEGUI version.

CE.

Posted: Thu Apr 03, 2008 19:27
by gring
Hi,

I also had that prob with timeGetTime, when i included winmm.lib it started running.

But I don't get what does problem still exists mean.....

/Gring

Posted: Fri Apr 04, 2008 02:45
by kidcdf
CrazyEddie wrote:Hi, and welcome :)

Which file are those #pragma statements in? I did a quick grep and found nothing like it :?

You should only use those static libs when creating a statically linked project - most people will not be doing this and should not have to use those static libs. Since you are getting errors relating to the CEGUIBase dll, it seems that you are not creating a statically linked project (or most likely you are also referencing the non-static version of the libs in addition to the static versions).

In addition, unless I am very much mistaken, you can not use the unmodified Ogre 1.4.7 SDK with the 0.6.0 CEGUI release, since the CEGUI renderer module it contains was compiled against the 0.5.0 release of CEGUI. Therefore, in order to use Ogre with the latest CEGUI 0.6.0 release, you will need to obtain the Ogre source and compile an updated renderer module against the newer CEGUI version.

CE.


I have solved it~ I rebuild the ogreceguirenderer with cegui0.6 sdk,and it does work!