Page 3 of 3

Posted: Wed Aug 25, 2010 5:25 pm
by CuteAlien
64-bit ... OK, that might be part of the problem.
I don't have much experience with 64-bit systems, but 32-bit computers won't be able to run a application (or dll) which is compiled for 64-bit. I hope others can help you out there.

The DirectX dll's should be part of the DirectX runtime libraries and you usually don't care much about those. You don't install them with your application or into your applicaiton folder. Instead DirectX has to be installed by the user (you can deliver the installer for the runtime libraries together with you application, but I think the license does explicitly forbid you to install it in any other way except using the official installer).

Also do not don't blame us for Microsoft no longer releasing updated DirectX 8 and DirectX 9 versions. And Irrlicht only supports those so far (DirectX 10 and later work rather different, but if you look around the forum you will find people working on Irrlicht drivers for those).

You still have not mentioned any compile-errors you get when you try to re-build Irrlicht. The resulting dll of a 64-bit build should be in bin\Win64-VisualStudio on success (and otherwise you should get errors on compiling). Those dll's do not come with official irrlicht, as mentioned in the readme in that folder.

Posted: Wed Aug 25, 2010 6:35 pm
by serengeor
I know that even when it compiled on 2010 it threw an error or warning that some paths are wrong or something similar, did you get this kind of message in the build log? you could copy and paste it here.

Posted: Wed Aug 25, 2010 6:58 pm
by Sylence
Yes 2010 complains about that some folders don't make sense (iirc the linker's output file is not the same as the project's one or something like this)

Have your looked in irrlicht/source/irrlicht/debug ?

Posted: Wed Aug 25, 2010 7:06 pm
by serengeor
Yea sylence now you remembered me that the dll was somewhere else, you could just use windows search function to find the dll, if it really compiled :wink:

Posted: Thu Aug 26, 2010 6:08 am
by TomTim
CuteAlien wrote:64-bit ... OK, that might be part of the problem.
I don't have much experience with 64-bit systems, but 32-bit computers won't be able to run a application (or dll) which is compiled for 64-bit. I hope others can help you out there.
The Engine isn't ready for a 64-Bit compilation, is it? So if my processor and my OS are both 64 Bit, then I'll have to use the 32 Bit versions, just to get compatibility, right? And since there is not 64 Bit version of the Engine, there won't be a change in that system ...

I got through this page. It says at the end of it that 64 Bit supportment is implemented since version 0.12.0 (correct me, if I got it wrong, but the current version is 1.7.1), but untested. So it might be worth to try it, don't you think so?
CuteAlien wrote:The DirectX dll's should be part of the DirectX runtime libraries and you usually don't care much about those. You don't install them with your application or into your applicaiton folder. Instead DirectX has to be installed by the user (you can deliver the installer for the runtime libraries together with you application, but I think the license does explicitly forbid you to install it in any other way except using the official installer).
Fine to know that not everything sticks on the programmer, for a little rest the developer of all those projects are responsible.
CuteAlien wrote:Also do not don't blame us for Microsoft no longer releasing updated DirectX 8 and DirectX 9 versions. And Irrlicht only supports those so far (DirectX 10 and later work rather different, but if you look around the forum you will find people working on Irrlicht drivers for those).
I didn't blame you at all, I just wonder why you have send me a 2 year old SDK ... if you say there no newer version, I'll have to appreciate your help though.
CuteAlien wrote:You still have not mentioned any compile-errors you get when you try to re-build Irrlicht. The resulting dll of a 64-bit build should be in bin\Win64-VisualStudio on success (and otherwise you should get errors on compiling). Those dll's do not come with official irrlicht, as mentioned in the readme in that folder.
I didn't mention them because there were no errors (in traditional meaning that errors disable the compiler's compiling). But if you mean errors as "errors and warnings", then I might got something for you. Unfourtunaly, its german (who wonders), but I'll try to translate it from the original:

[german]TargetPath(E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Release\Irrlicht.dll) entspricht nicht dem OutputFile-Eigenschaftswert (E:\User\irrlicht-1.7.1\bin\Win32-visualstudio\Irrlicht.dll) von Linker. Das Projekt wird daher möglicherweise nicht ordnungsgemäß erstellt. Damit dieses Problem behoben werden kann, müssen die Eigenschaftswerte für $(OutDir), $(TargetName) und $(TargetExt) dem in %(Link.OutputFile) angegebenen Wert entsprechen.[/german]

[translation]The TargetPath (E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Release\Irrlicht.dll) doesn't fit to the OutputFile attitude (E:\User\irrlicht-1.7.1\bin\Win32-visualstudio\Irrlicht.dll) of the linker. The project might not be created correctly. To solve the porblem, change the attitudes of $(OutDir), $(TargetName) and $(TargetExt) in relation of the in %(Link.OutputFile) declared attitude.[/translation]

I hope that was not in vain ...
serengeor wrote:I know that even when it compiled on 2010 it threw an error or warning that some paths are wrong or something similar, did you get this kind of message in the build log? you could copy and paste it here.
Already done ...
serengeor wrote:Yea sylence now you remembered me that the dll was somewhere else, you could just use windows search function to find the dll, if it really compiled :wink:
I can't, for I don't know if it's the "common" Irrlicht.DLL or "my" Irrlicht.DLL ...

Posted: Thu Aug 26, 2010 7:24 am
by serengeor

Code: Select all

I can't, for I don't know if it's the "common" Irrlicht.DLL or "my" Irrlicht.DLL ...
By saying common you mean the one that came with the SDK ?
There's a way to find it out, Just look at the size of original Irrlicht.dll and the size of the one it finds.
Original Dll's should be in the bin folder so if it finds it somewhere else it's yours, if its in a Bin folder just look at the file modification date and you'll know if its the one you compiled or not.

Posted: Thu Aug 26, 2010 8:10 am
by TomTim
serengeor wrote:By saying common you mean the one that came with the SDK ?
There's a way to find it out, Just look at the size of original Irrlicht.dll and the size of the one it finds.
Original Dll's should be in the bin folder so if it finds it somewhere else it's yours, if its in a Bin folder just look at the file modification date and you'll know if its the one you compiled or not.
By saying common I excatly mean the one that came with the SDK ... sorry if it's a bad idiom.

However, I'll try it out. Thanks for all your help.

Posted: Thu Aug 26, 2010 12:51 pm
by Sylence
First look in E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Release or in E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Debug for the debug build.

Posted: Thu Aug 26, 2010 2:34 pm
by TomTim
Sylence wrote:First look in E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Release or in E:\User\irrlicht-1.7.1\source\Irrlicht\obj\Debug for the debug build.
I did. In the first one were just lots of OBJs (seemingly for each *.cpp file one *.obj file), in the second just some TLOGs, LOGs and one MANIFEST.

Oh, and that advice with let-windows-search-for-you didn't work at all, I got just 3 valid entries:

1. Irrlicht.DLL (2.01 MB, changed on 26.08.2010 this morning, in E:\User\irrlicht-1.7.1\bin\Win32-VisualStudio, apparently my one, although it's the smallest).
2. Irrlicht.DLL (6.46 MB, changed on 14.02.2010 noon, in E:\User\Irrlicht-1.7.1\bin\Win32-gcc, obviously crap, I don't use gcc and never touched this file).
3. Irrlicht.DLL (2.48 MB, changed on 14.02.2010 noon, however from a old project of mine. I am sure this is the original DLL that I got from the Irrlicht-SDK. And assuming that MY DLL shall be bigger/equally sized than the OFFICAL DLL, my file is missing something important).

I assume that number one is my DLL, but it's smaller than the offical one. :?:

Posted: Thu Aug 26, 2010 3:43 pm
by hybrid
MAybe you have disabled things in IrrCompileConfig, or the new compiler is really much better than the old one. Niko is usually using MSVC 2003 for the official releases.

Posted: Thu Aug 26, 2010 3:56 pm
by TomTim
hybrid wrote:MAybe you have disabled things in IrrCompileConfig, or the new compiler is really much better than the old one. Niko is usually using MSVC 2003 for the official releases.
Ich wünscht, ich wär tot ... Image

So you wanna say me that maybe everythings fine and I just got normal paranoia? Because I think I know what's the problem: I have copied the include files of the DirectX SDK in my compiler, but not the LIBs ... is the Linker able to find them though?

Posted: Thu Aug 26, 2010 6:42 pm
by serengeor
If you link them in compiler it will surely find them :wink:
PS. why did you copy them, can't you just set the paths for the compiler to look at?

Posted: Fri Aug 27, 2010 6:52 am
by TomTim
OK, I have try it out. SEEMINGLY, it works. But I won't trust the compiler to much. I have just used some GUI functions, but I won't trust that 3D will work with that.

However, thank you all so much for all your help. :)

Posted: Fri Aug 27, 2010 5:35 pm
by serengeor
Recompile any example that uses 3D stuff from the SDK and you'll see if it really works :wink: