According to scanelf, this links only against opengl and libsdl, but not (directly) against anything in xlibs, soundlibs, or compat libraries. So AFAICS the correct dependencies are: RDEPEND=" || ( >=virtual/opengl-7.0-r1[abi_x86_32(-)] >=media-libs/libsdl-1.2.15-r4[abi_x86_32(-)] amd64? ( app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)] ) )"
I'm not sure what's with the series of these bug reports. ldd clearly shows linkage to these libs. The NEEDED entries you are probably querying with scanelf are nonsensical for binary packages since we have no idea how these were compiled and they will just fail to start, even if supposedly unneccessary deps (which were wrongly linked in) are not on the system. Please try removing xlibs or pulseaudio from your system and start the game. There are rather deps MISSING. For example dev-libs/json-c.
(In reply to Julian Ospald (hasufell) from comment #1) > I'm not sure what's with the series of these bug reports. ldd clearly shows > linkage to these libs. That's not surprising, because ldd will resolve the complete dependency tree, therefore including indirect dependencies. If you doubt the output of scanelf, here's what objdump says: $ objdump -p spacetripper-bin | grep NEEDED NEEDED libSDL-1.2.so.0 NEEDED libpthread.so.0 NEEDED libGL.so.1 NEEDED libGLU.so.1 NEEDED libc.so.6 Again, there's only libc, libsdl, and opengl.
(In reply to Ulrich Müller from comment #2) > (In reply to Julian Ospald (hasufell) from comment #1) > > I'm not sure what's with the series of these bug reports. ldd clearly shows > > linkage to these libs. > > That's not surprising, because ldd will resolve the complete dependency > tree, therefore including indirect dependencies. > > If you doubt the output of scanelf, here's what objdump says: > > $ objdump -p spacetripper-bin | grep NEEDED > NEEDED libSDL-1.2.so.0 > NEEDED libpthread.so.0 > NEEDED libGL.so.1 > NEEDED libGLU.so.1 > NEEDED libc.so.6 > > Again, there's only libc, libsdl, and opengl. That doesn't matter. The package is currently broken for users who don't have pulseaudio installed, no matter if they actually use it or not.
Could you please paste the output of lddtree, then? Or a similar tool that shows exactly what links to pulseaudio.
On pulseaudio, I wonder if maybe you have SDL_AUDIODRIVER=pulse in your environment? I imagine that would cause SDL to fail when pulse is not installed. The xlibs "dependency" is probably indirect through SDL as well.
Or maybe it is just because your SDL is linked against libpulse and you didn't rebuild it. As mgorny suggests, lddtree output would be helpful.
Yes, pulseaudio is indeed not needed. The correct dep however is >=media-libs/libsdl-1.2.15-r4[abi_x86_32(-),X,video,joystick,opengl,sound] You cannot figure that out with tools and the source code is not available.
(In reply to Julian Ospald (hasufell) from comment #7) > You cannot figure that out with tools and the source code is not available. Right. libSDL dlopens quite a few libraries. So that does make it more difficult to figure that out.