On Tuesday, 27 January 2015 at 22:54:15 UTC, ketmar wrote:
On Wed, 28 Jan 2015 11:04:55 +1300, Rikki Cattermole wrote:
First off, Derelict-Util/Derelict-GL3 is a biggy here. Its old
code,
lets admit it. Its also a standard for loading shared library
functions.
please, not Derelict! it's a great work and all that, but it's
habit to
load ALL functions is nasty. not only it is unnecessary, it's
sometimes
just wrong. i recall the problem with DlangUI, where Derelict
tries to
load FreeImage function which is not in my (old) version of the
library,
and DlangUI is not using that function at all. yet DlangUI
builds
successfully and then failed to run until i commented out that
function.
As Mike Parker says, you can support multiple library versions
since years.
Example:
https://github.com/d-gamedev-team/gfm/blob/master/enet/gfm/enet/enet.d#L30
And the support for multiple version has gone stronger recently.
Such a thing isn't even possible with static linking.