[Haskell-cafe] Undefined symbols when trying to use SDL-mixer
Peter Reiner Fels
prfels at googlemail.com
Thu Jan 15 20:36:57 UTC 2015
I'm trying to use SDL-mixer v0.6.1. When I add a dependency to my cabal file
and run cabal repl I get the following error:
Loading package SDL-mixer-0.6.1 ... <command line>: can't load .so/.DLL for:
.8.3.so: undefined symbol: Mix_FreeChunk)
I can see these undefined symbols when I run:
nm -D SDL-mixer-0.6.1/libHSSDL-mixer-0.6.1-ghc7.8.3.so | grep Free
Running ldd on this file and grepping for SDL gives
libSDL-1.2.so.0 => /usr/lib64/libSDL-1.2.so.0 (0x00007fb20a232000)
It seems like a dependency to /usr/lib64/libSDL_mixer.so is missing.
Line 1815 of SDL-mixer-0.6.1/configure contains the following definition of
SDL_LIBS="-L`$SDL_CONFIG --prefix`/lib -lSDL_mixer"
This refers to the 32 bit lib directory, but I'm on a 64 bit system. I
unpacked SDL-mixer and changed this line to refer to the 64 bit lib
Next I recreated my cabal sandbox from scratch and added the patched version
of SDL-mixer as a dependency.
When I run cabal repl again I get the same error as mentioned above.
What am I doing wrong?
How do I get SDL-mixer to build against /usr/lib64/libSDL_mixer.so?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe