> What the heck is the difference betweem them? I always thought, you
> can convert any object code either into a dll or a static lib.
> (This answer was given to me to the question whether
> i would need some kind of -fPIC stuff on Windows).
> Thanks for any clarification in advance,
I'm working through stuff like this, and I'll share my
understanding. Hopefully, the someone out there will jump on
this if I suggest anything really wrong or misleading.
My NT knowledge and DLL/DSO detail knowledge is pretty soft, but
I think the major difference is that a static library is a mere
collection of objects. No linkage operations have been done
to resolve links between objects. A DSO/DLL is fully linkage
resolved for the purposes of the objects which compose it. It
will further have operating-environment specific information
encoded to allow users (other executable) of that DLL to know
what functions are present, where, etc., at run-time.