GNU/Linux >> Linux Esercitazione >  >> Linux

Non è possibile installare normalmente Gstreamer-ffmpeg a 32 bit, la libreria non riesce a trovare altre librerie a 32 bit?

Sono su Ubuntu 12.04 a 64 bit e sto cercando di far funzionare un gioco (GTA SA) in Wine, ma continua a bloccarsi. Dopo aver letto i log degli errori, sembra che avessi bisogno di alcune versioni a 32 bit di gstreamer, probabilmente per riprodurre il video introduttivo. Ho già ia32-libs , poiché ho letto da qualche parte, ne avrò bisogno per eseguire software a 32 bit. Ho provato per la prima volta:

sudo apt-get install gstreamer0.10-ffmpeg:i386

Che restituisce:

 gstreamer0.10-ffmpeg:i386 : Depends: libavcodec53:i386 (>= 4:0.7.3-1) but it is not going to be installed or
                                      libavcodec-extra-53:i386 (>= 4:0.7.3-1) but it is not going to be installed

E dipende anche da libavformat, libpostproc e libswscale con circa lo stesso errore. Così ho continuato a cercare e ho trovato un bel tool, getlibs, che permette di installare librerie a 32 bit. Penso che li metta semplicemente in /usr/lib32 directory, che probabilmente non è il modo migliore per farlo, ma l'ho provato comunque.

Quindi ho installato le librerie a 32 bit con getlibs di cui si lamentava Wine. Ora ho ricevuto diversi errori, in pratica la libreria a 32 bit fa riferimento ad altre librerie che ora non riesce a trovare. Ad esempio uno degli errori dice:

Failed to load plugin '/usr/lib32/gstreamer-0.10/libgstffmpeg.so': libavformat.so.53: cannot open shared object file: No such file or directory

Quindi il mio pensiero iniziale era corretto, poiché ora utilizza la versione a 32 bit. Ora stavo cercando di capirlo con ldd per vedere dove la libreria fa riferimento ad altre librerie:

# This one is fine
ldd /usr/lib/gstreamer-0.10/libgstffmpeg.so | grep avformat
libavformat.so.53 => /usr/lib/x86_64-linux-gnu/libavformat.so.53 (0x00007f8314181000)

# This one isn't
ldd /usr/lib32/gstreamer-0.10/libgstffmpeg.so | grep avformat
libavformat.so.53 => not found

Quindi, in effetti, libgstffmpeg.so non riesce a trovare il corretto libavformat.so. Ho provato a installare di nuovo la versione a 32 bit di libavformat con getlibs, che l'ha inserita in /usr/lib32/i386-linux-gnu/libavformat.so . Ma ldd mi dice ancora che non riesce a trovare libavformat. Quindi ho provato a creare un collegamento simbolico nella stessa directory, ma l'ho chiamato libavformat.so.53 e ho anche creato un collegamento simbolico a `/usr/lib/i386-linux-gnu/libavformat.so.53', ma entrambi mi danno lo stesso errore.

Ora sono sicuro che questo non è davvero il modo corretto di procedere, ma non conoscevo il modo giusto per farlo. Quindi qual è il modo corretto per farlo, o gstreamer0.10-ffmpeg semplicemente non ha il supporto a 32 bit o multilib? E come posso scoprire qual è la directory, dove libgstffmpeg (o qualsiasi libreria suppongo) controlla le librerie a 32 bit a cui fa riferimento?

Correlati:Linux – Come inserire nella blacklist un settore RAM danneggiato corretto secondo l'indicazione di errore MemTest86+?

Risposta accettata:

Prova:

ldconfig -p | grep lib32

Se non vedi alcun output, è perché la cache del linker (leggi il primo paragrafo di man ldconfig e sul -p switch) non fa riferimento a /usr/lib32. Ho controllato un sistema Ubuntu 12.04 e non è presente per impostazione predefinita. Puoi aggiungerlo a:/etc/ld.so.conf.d/libc.conf che può contenere solo /usr/local/lib . Esegui solo ldconfig , quindi il comando -p dall'alto. Dovresti vedere la roba in /usr/lib32; ora prova di nuovo il tuo ldd sulla lib gstreamer a 32 bit.


Linux
  1. Come installare la libreria Ncurses in Linux

  2. Linux:non è possibile installare le intestazioni Linux (kali Linux)?

  3. Linux:dovrei installare 32 o 64 bit?

  4. Non riesci a trovare il file da patchare nella riga di input 3?

  5. ld non riesce a trovare una libreria esistente

Come installare la libreria Python PyBrain in Linux

Android adb non trovato

Installando Qt su Linux, non riesco a trovare -lGL

node.js:impossibile trovare il modulo 'richiesta'

Impossibile trovare l'errore di configurazione di pkg

Come installare correttamente wkhtmltopdf su debian 64 bit?