Dgame RC #1
Mike Parker via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Thu Apr 2 00:56:22 PDT 2015
On 4/2/2015 11:36 AM, Craig Dillabaugh wrote:
> derelict.util.exception.SymbolLoadException at ../../../.dub/packages/derelict-util-1.9.1/source/derelict/util/exception.d(35):
> Failed to load symbol SDL_HasAVX from shared library libSDL2.so
This error message is telling you two things. First, SDL is installed on
your system and the loader found it just fine. Second, the loader was
unable to find the SDL_HasAVX function in libSDL2.so.
SDL_HasAVX was added to the API in SDL 2.0.2, so you have an older
version installed on your system and DGame is attempting to load a more
recent version. Derelict will load either SDL 2.0.2 or 2.0.3. The latter
is the latest release, but there are no API differences between them.
From your end, the solution is to install the latest version of SDL2.
Another solution is for DGame to take advantage of the SharedLibVersion
feature of Derelict to set a minimum acceptable version of SDL. For
example, if DGame doesn't use any API features added to SDL since 2.0.0,
then this will allow any version of SDL2 to load:
DerelictSDL2.load(SharedLibVersion(2,0,0));
Bye bye SymbolLoadException. Then again, loading the older versions
makes it possible for DGame to be affected by SDL bugs that have since
been fixed, so I make no judgement on whether or not it's worth it.
More information about the Digitalmars-d-announce
mailing list