Ho un problema con una libreria condivisa chiamata libsdl. Quello che sto cercando di fare in realtà è avviare un motore di gioco chiamato GCCG (Generic Collectible Card Game). Tutti i pacchetti necessari sono stati installati per il motore, tuttavia quando eseguo il comando ./Mtg
mi dà quanto segue:
./ccg_client:errore durante il caricamento delle librerie condivise:libSDL-1.2.so.0:impossibile aprire il file oggetto condiviso:nessun file o directory di questo tipo
Dal messaggio di errore, sembra chiaro che le librerie libSDL non sono installate o non è possibile accedervi/si trovano in una posizione errata. Dopo aver controllato i miei pacchetti con dpkg --get-selections | grep libsdl
Ho scoperto che tutti i pacchetti libSDL sono installati... quindi, per essere sicuro, ho usato sudo apt-get purge
su tutti i pacchetti libSDL e fatto un'installazione pulita su tutti i pacchetti libSDL, tuttavia, il risultato è sempre lo stesso.
Inoltre, quando utilizzo apt-file search libSDL-1.2.so.0
, per individuare le cosiddette “librerie mancanti”, ottengo questo come risultato:
libsdl1.2debian:/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0
libsdl1.2debian:/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0.11.3
Quindi, come ho capito, ci sono... ma non sono condivisi?
Risposta accettata:
È un binario a 32 o 64 bit? (puoi controllare con file ./Mtg).
Se si tratta di un binario a 32 bit, è necessaria la versione a 32 bit di libSDL, poiché sembra che tu stia utilizzando x86_64.