March 28, 2024, 05:36:18 AM

News:

IonicWind Snippit Manager 2.xx Released!  Install it on a memory stick and take it with you!  With or without IWBasic!


no runtime libraries needed ???

Started by Cezaro, December 26, 2006, 12:28:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Cezaro

Hello!

"Aurora can create stand alone executables with no runtime libraries needed. "

this is true??? when i create app that use 3D classes from aurora, i send my executable
and media files to my friends and  they cannot run this exe because they need dx3d9r.dll file.
so i must send this dll file with my exe and media files?


best regards
Cezaro

Kale

Quote from: Cezaro on December 26, 2006, 12:28:44 PM
Hello!

"Aurora can create stand alone executables with no runtime libraries needed. "

this is true???

Yes. This means that the executables themselves do not need any extra runtimes in order to execute and run their code. The 3D engine, however, has been written for maximum portability. So in this case it has been written as a DLL and your executable will need it residing in the exe's directory or in a system dir for it to find and use the contained pieces of code.

sapero

Hello Cezaro, you can include this dll with your executable as:
1. standard dll (external file),
2. as a tail of the executable, also the dll must be first converted to static library, so you have no external dependencies.

I know only two developers who produce this usefull tool: binary-soft, and sapero :D
The first developer expands the data (you must link) with large number of unused nulls (final exe is min. 1MB), my tool uses zlib compression to save the resulting size so much as possible.
I've made some tests and it worked very good with all examples from Aurora 3d folder. I'll post it shortly after my relocation.
The final executable size (without bitmaps etc.) with embedded dx3d9r.dll is ~0.5MB.

Zen

Interesting Sapero, I am waiting with anticipation ;)

Lewis

Steven Picard

I would love to see that, sapero.   :D

Also, you can use something like MoleBox (www.molebox.com)

Mike Stefanik

Just keep in mind that not all DLLs can be automagically converted into static link libraries. For example, if the DLL has code in DllMain for DLL_PROCESS_ATTACH or DLL_THREAD_ATTACH, it may not behave correctly. There can also be issues with DLLs that use __declspec(thread) or implement stubs where it expects to be able to obtain it's own handle and call GetProcAddress using a private ordinal value. Programmers can do some strange stuff.
Mike Stefanik
www.catalyst.com
Catalyst Development Corporation