Page 1 of 2

Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Thu Mar 04, 2010 03:40
by lymantok
Hi CE,

Has anyone tried building this combination? I've been trying a few combinations for several days without any success. Just get a failure to initialize properly on launching the exe. I had Irrlicht 1.5 and CEGUI 0.6.2 working fine before, so just curious if the latest versions of Irrlicht and CEGUI are able to work together?

Thx!

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Thu Mar 04, 2010 09:38
by CrazyEddie
Hi,

Those failure to initialise issues are usually some problem with runtime library versions. What's the exact message you're getting? Do you get the same for debug and release configurations?

It's quite a coincidence that yesterday evening - as part of a new automated build system I'm setting up - I did actually build CEGUI 0.7.1 (well, the stable svn branch) against Irrlicht 1.7.1 and the code ran ok (I did have another, graphical, issue, which I have to investigate, though currently I think it is because I was running in a VM - I just need to test on a 'real' computer!).

CE

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Thu Mar 04, 2010 14:42
by CrazyEddie
I've now tested this on a real computer and can confirm everything seems to work ok.

CE.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Thu Mar 04, 2010 17:51
by lymantok
Hi CE,

The error I get is: The app failed to initialize properly (0xc150002). I get the same error on debug (non-static) and release. I'm using vc++2005 with the SP1 patch.

Good to know your build worked! I must still have a library mismatch somewhere. Argh.

Thx!

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Fri Mar 05, 2010 09:41
by CrazyEddie
Ok. It could be you're missing the ATL security update to the VC++ redistributable. If you can't / don't get those automatically via MS update, you can get that one here: http://www.microsoft.com/downloads/deta ... laylang=en

HTH

CE.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Sun Mar 07, 2010 17:42
by lymantok
Hi CE,

You are awesome. Many thanks for the ATL pointer. I did'nt have that installed. I get a bit further now.

My application starts but prior to opening the irrlicht render window I get an Application failed to start because SILLY.DLL was not found. If I press ok, the application continues on and the irrlicht render window appears.

I have CEGUISILLYImageCodec_d.dll in my debug directory, but I don't find any references to SILLY.DLL anywhere. I don't see it in the CEGUI premake files anywhere either. Any idea where this SILLY.DLL reference might be coming from?

Any thoughts on this one? Thx.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Sun Mar 07, 2010 18:05
by lymantok
Hi CE,

I found SILLY.dll in the cegui dependencies. Copying these to my debug directory eliminated my cannot find SILLY.dll error on startup.

Many thanks for your help!

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Sun Mar 07, 2010 18:24
by CrazyEddie
Hi,

If you want to use SILLY - or any of the other codecs - that's fine. Though since you're using Irrlicht, you may prefer to use Irrlichts own integrated image loading faciltiies - in order to do this you need the custom CEGUI::IrrlichtImageCodec to be passed to System::create. The simplest way of getting this is to use the IrrlichtRenderer::bootstrapSystem function instead of the IrrlichtRenderer::create and System::create functions. Obviously if you need to pass custom values to the System::create function the bootstrapSystem helper may be inappropriate, in which case you can create the IrrlichtImageCodec by calling the IrrlichtRenderer::createIrrlichtImageCodec() helper.

HTH

CE

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Mon Mar 15, 2010 00:24
by lymantok
Hi CE,

Many thanks, I'll check into that. I finished my test program and can display a layout window perfectly. Unfortunately, now, sorry to trouble you again, I'm getting the dreaded runtime crash on subscribeEvent again. I fixed this subscribe event problem last time I was using CEGUI 6.2 and Irrlicht 1.5 by applying the SP1 patch to VC 2005 as you recommended in the past. I already have this applied along with the ATL runtime security patch you mentioned earlier. See compiler info below.

Error:

First-chance exception at 0x00433a8f in cegui-with-input_vc8.exe: 0xC0000005: Access violation reading location 0xbaadf008.
Unhandled exception at 0x00433a8f in cegui-with-input_vc8.exe: 0xC0000005: Access violation reading location 0xbaadf008.

This happens with debug and release.

Here is the code:

bool (*pf_EventHandler)(const CEGUI::EventArgs& e);

pf_EventHandler = HandleNewGameButton;
CEGUI::PushButton* m_pButtonNew;
m_pButtonNew = static_cast<CEGUI::PushButton*>(CEGUI::WindowManager::getSingleton().getWindow( "Root/Frame/ButtonNew" ));
try
{
m_pButtonNew->subscribeEvent(CEGUI::PushButton::EventClicked, CEGUI::Event::Subscriber(pf_EventHandler));
} // End Try
catch (CEGUI::Exception &e)
{
printf("File:%s\n", e.getFileName().c_str());
printf("Line:%d\n", e.getLine());
printf("Name:%s\n", e.getName().c_str());
printf("Message:%s\n", e.getMessage().c_str());
} // End Catch

I've run the dependency walker and I can't see anything that pinpoints a problem at present.

Anyway, if you have any other thoughts on what might be going on with whatever is impacting subscribeEvent, I would appreciate it! Many thx!

Here is my compiler info and patches...running under XP SP3:

Microsoft Visual Studio 2005
Version 8.0.50727.762 (SP.050727-7600)
Microsoft .NET Framework
Version 2.0.50727 SP2

Installed Edition: Standard

Microsoft Visual Basic 2005 77633-235-2738465-41612
Microsoft Visual Basic 2005

Microsoft Visual C++ 2005 77633-235-2738465-41612
Microsoft Visual C++ 2005

Microsoft Web Application Projects 2005 77633-235-2738465-41612
Microsoft Web Application Projects 2005
Version 8.0.50727.762

Microsoft Visual Studio 2005 Standard Edition - ENU Service Pack 1 (KB926601)
This service pack is for Microsoft Visual Studio 2005 Standard Edition - ENU.
If you later install a more recent service pack, this service pack will be uninstalled automatically.
For more information, visit http://support.microsoft.com/kb/926601

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Mon Mar 15, 2010 02:58
by agamemnus
Has anyone tried using 2008? (most recent patched) As I said in the 1.6.1. thread, I can't get it to run.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Mon Mar 15, 2010 10:01
by CrazyEddie
@lymantok:
I'll get back you about this once I've looked over some things, if you know what I mean ;) ;)

agamemnus wrote:Has anyone tried using 2008? (most recent patched) As I said in the 1.6.1. thread, I can't get it to run.

When I compile for Windows, I use both the 2005 and 2008 compilers and have no issues, so any issues you're having are 99.9% usage issues.

CE.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Tue Mar 16, 2010 04:57
by lymantok
CE,

Many thanks. This is indeed looking like a bad/mismatched vc 2005 configuration on my part. I redid my vcproj file using release for cegui, irrlicht, and my project and I no longer get any runtime error on subscribeEvent. If I get ambitious I'll recompile irrlicht for debug and see if that also works with my original debug configuration.

Thx again!

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Tue Mar 16, 2010 09:55
by CrazyEddie
I'm glad you got something to work :) Trying to debug without a 'debug' version will be no fun though, so I hope you can get that sorted. I think I had tried a debug version with Irrlicht from the SDK, so it should be possible to get it to work (Irrlicht seems pretty good as regards to shielding client code from the version of the c/c++ runtime it's using). If anything comes to mind, I'll let you know ;)

CE.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Wed Mar 17, 2010 20:53
by agamemnus
Thanks for the help, Eddie.

Re: Building Irrlicht 1.7.1 with CEGUI 0.7.1

Posted: Mon Mar 29, 2010 03:17
by lymantok
Thanks CE. I did compile Irrlicht for debug DLL and then recompiled CEGUI for debug DLLas well (definitely DLL not static this time :wink: ). I had no luck with getting my test application running in debug build, and it's a pain as you said trying to debug. I'll be taking a closer look at how I built Irrlicht to see what I missed with my environment. :(

Anyway, I did get a couple of simiple Irrlciht+CEGUI tutorial examples working in "release" configuration and will post a link to my web site soon in case anyone is interested in them.

Thx again!