[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Missing "libSDL_gfx.so.4"



On, Fri Jul 24, 2009, Evan Kroske wrote:

> I recently tried to install the current version of sdl_gfx from source for
> pygame2. After some problems, I installed it successfully and tested it with
> its own test suite. However, after reinstalling pygame2 with SDL_gfx
> installed, I get an error if I try to import pygame.sdlgfx.primitives:
> 
> Traceback (most recent call last):
> >   File "sdlgfxtest.py", line 6, in <module>
> >     import pygame2.sdlgfx.primitives as gfx
> >   File "/usr/lib/python2.5/site-packages/pygame2/sdlgfx/__init__.py", line
> > 1, in <module>
> >     from pygame2.sdlgfx.base import *
> > ImportError: libSDL_gfx.so.4: cannot open shared object file: No such file
> > or directory
> >
[...]

The situation you ran into is a typical "shared library version bump"
issue. What does that mean? You have a library around that's named
foo.so.1. Now you install a new version of it that indicates it is ABI
incompatible to previous versions (thus it has a different version
suffix, e.g. foo.so.3).

What can you do about that? Rebuild pygame2, so it links against the new
version, or install the old version of SDL_gfx again (you even can do
that in in parallel, using a different prefix and let ld know about the
new library directory).

> If you can tell me where the source of pygame2.sdlgfx.base is, I might be
> able to figure it out.

Though this is not a source code issue (as we do not manually dlopen()
any library within pygame2), you can find the sdlgfx.base module source
code in pygame2/src/sdlgfx/gfxmod.c.

Regards
Marcus

Attachment: pgppggDS1asDO.pgp
Description: PGP signature