1.7.0 Win32 dependencies as DLL's
roger levy

Does anyone have the latest dependencies as DLL's? (for 5.2.4)

I'm having trouble loading allegro_monolith-5.2.dll in SwiftForth.

SiegeLord

What errors are you getting? The official binaries have the dependencies statically linked, so there are no DLLs.

Edgar Reynaldo

Uh, why?

My binaries include the dlls for the dynamic build. Isn't that standard?

https://bitbucket.org/bugsquasher/unofficial-allegro-5-binaries/downloads/

SiegeLord

Uh, why?

For the purposes of using Allegro, the dependency dlls would just clutter things. The advantage of using dlls in the first place is to simplify linking for the user program, and secondarily allow upgrades of Allegro without recompiling things. I thought it was unlikely to be necessary to upgrade the dependencies separately from Allegro. Also, since I modify the dependencies a little bit, I don't want people using the modified dlls in other settings and being confused. This last bit isn't as important though, I primarily cared about the unnecessary clutter point.

Edgar Reynaldo

But then you make all kinds of trouble for people who want to use the dependency libraries themselves. When they go to link to the deps, they get redefined symbols.

At some point, you've got to assume people are grown ups, and let them make decisions for themselves.

roger levy

Since SwiftForth builds itself from Forth source, DLL's are mandatory in order to make use of C libraries.

I agree there is clutter but couldn't the dependencies be compiled into the Allegro monolith DLL? Or maybe there could be a new class of monolith, something totally self-contained ...

As for errors, at the worst, the DLL itself fails to load. SwiftForth's error reporting kind of sucks so all I know is it fails. I have gotten it to load with the dependencies for 5.2.3, but al_install_system fails.

Elias

I think there's a misunderstanding - the monolith DLL does contain everything already (everything is statically linked into that DLL) and that is why we do not need separate dependency DLLs. All you should need is the one DLL.

roger levy

Oh. Something must be wrong then, because even 5.2.3 monolith fails to load, if the dependency DLL's aren't around.

Thread #617541. Printed from Allegro.cc