Opened 15 years ago
Closed 14 years ago
#23899 closed defect (wontfix)
libsdl_mixer static lib linked with dynamic dependencies
Reported by: | domiman@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.2 |
Keywords: | Cc: | ||
Port: | libsdl_mixer |
Description (last modified by mf2k (Frank Schima))
The static lib of libsdl_mixer (libSDL_mixer.a) is linked against/with the dynamic libs of its dependencies (smpeg, libvorbis, libogg and if it is installed, flac). otool doesn't show it but when you open the file libSDL_mixer.a with an editor you can see that it links with the dylib files and when you compile an app with static libsdl_mixer the app will depend on the dynmaic libs.
I'm not sure what to do about this. The ./configure options
--disable-music-mp3-shared \ --disable-music-ogg-shared \ --disable-music-flac-shared
will make the static lib not use these libs at all.
With --disable-shared libsdl_mixer
will not compile.
This might be an upstream problem, as soon as I'm allowed to post in the SDL forum, I'll report there, too
Change History (3)
comment:1 Changed 15 years ago by mf2k (Frank Schima)
Description: | modified (diff) |
---|
comment:2 Changed 15 years ago by domiman@…
comment:3 Changed 14 years ago by jmroot (Joshua Root)
Resolution: | → wontfix |
---|---|
Status: | new → closed |
I think we'll leave this one to upstream.
Note: See
TracTickets for help on using
tickets.
I had an error in my thinking. I thought that when you give these ./configure options libsdl_mixer would link with the static libs of its dependencies when it is built. BUT using these ./configure options mean, that when you want to use the static lib of libsdl_mixer in a project you need to make sure the project links to the static libs of libsdl_mixer's dependencies as well. I tested this a bit and IMO the ./configure options
should go into the portfile. These seem to affect only the static lib (so it doesn't link against the dynamic libs of its dependencies). Building a project linking dynamically to libsdl_mixer still works as it should (libsdl_mixer links dynamically to its dependencies).