Erro ao carregar a biblioteca compartilhada libSDL-1.2

1

Eu compilei o jogo ToME 3, mas posso executá-lo, tenho:

tome3: error while loading shared libraries: libSDL-1.2.so.0: cannot open shared
object file: No such file or directory

Eu instalei o libstd1.2 nos pacotes devel e runtime. Eu tenho essa biblioteca

$ ls /usr/lib/x86_64-linux-gnu/libSDL*
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0
/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0.11.4
/usr/lib/x86_64-linux-gnu/libSDL.a
/usr/lib/x86_64-linux-gnu/libSDL_image-1.2.so.0
/usr/lib/x86_64-linux-gnu/libSDL_image-1.2.so.0.8.4
/usr/lib/x86_64-linux-gnu/libSDLmain.a
/usr/lib/x86_64-linux-gnu/libSDL.so

Eu tentei colocar /usr/lib/x86_64-linux-gnu/ em PATH e também copiar libSDL-1.2.so.0 para o diretório onde eu tenho o jogo, mas não funciona.

Alguém faz a mesma pergunta no AskUbuntu a solução foi reinstalar o lib mas não funciona.

    
por jcubic 09.02.2014 / 01:30

2 respostas

3

Execute ldd no binário do jogo ( t-engine ) para ver exatamente o que está procurando e se resolve.

Veja os caminhos pesquisados e o que é encontrado usando strace -e file t-engine . Se você vir alguns caminhos sendo procurados por libSDL, mas não o caminho onde sua libSDL está ( /usr/lib/x86_64-linux-gnu/ ), então veja se você pode descobrir o porquê.

Meu palpite é que o t-engine é compilado para i386 (32 bits) e suas bibliotecas SDL são compiladas para x86_64 (64 bits).

    
por 20.03.2014 / 01:43
0

Existe alguma entrada em /etc/ld.so.conf.d/ para o diretório de sua biblioteca / biblioteca?

tente

ldconfig -vp |grep SDL-1.2

se você instalou uma nova biblioteca, você deve simplesmente atualizar

sudo ldconfig -v
    
por 09.02.2014 / 02:32