Il vino non riesce a trovare gnome-keyring-pkcs11.so


62

Sto cercando di avviare un programma usando wine su Ubuntu LTS 12.04 64 bit

Quando lo faccio, ricevo il seguente messaggio di errore ...

/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux->gnu/pkcs11/gnome-keyring-pkcs11.so: impossibile aprire il file oggetto condiviso: No tale file o> directory

Quando provo a collegare simbolicamente le librerie a 64 bit, ovviamente, ottengo il seguente ...

jackie@jackie-Latitude-E6410:~/tmp/AC$ wine TTG.exe
p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: 
/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: wrong ELF class: ELFCLASS64
wine: Unhandled page fault on read access to 0x00000000 at address (nil) (thread 0009), 
starting debugger...
err:seh:raise_exception Unhandled exception code c0000005 flags 0 addr 0x7bc47aac

Esiste un pacchetto che installa 32 bit e 64 bit?

AGGIORNARE:

Sembra essere un bug in Ubuntu w / 1.4

https://launchpad.net/~ubuntu-wine/+archive/ppa

Ho usato questi passaggi e la mia applicazione ha funzionato

http://www.noobslab.com/2012/04/install-wine-152-on-ubuntu.html

Non sono sicuro del perché, ma sembra ignorare l'errore se si utilizza 1.5.


Ho provato ad aggiornare Rosetta Stone dalla 4.1.10 alla 4.1.15 manualmente usando una patch di aggiornamento, e ho ottenuto lo stesso errore prima e dopo l'aggiornamento di wine1.4 a wine1.5. Non sembrava davvero aggiustare nulla. Devo eliminare completamente il wineprefix esistente e crearne uno completamente nuovo?
TheBicentennialMan

Risposte:


42

Questa soluzione funziona con Ubuntu 12.04 a 64 bit

Inizialmente avevo questo errore:

/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory

Quindi ho fatto un ln -scollegamento alla lib a 64 bit e ho ricevuto questo errore: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: classe ELF errata: ELFCLASS64

nota: prima di iniziare rimuovere il collegamento alla libreria a 64 bit se è stato creato.

Soluzione:

Ecco come risolverlo. Nota Sto usando Crossover 11.3, che utilizza wine 1.4, quindi dovrebbe funzionare anche per gli utenti di vino.

Ulteriori informazioni correlate a getlibs sono disponibili qui .

1) Installa getlibs:

UODATE 3/2013: scarica getlibs da https://github.com/spaetzlecode/getlibs

wget https://raw.github.com/spaetzlecode/getlibs/master/getlibs
sudo chown root:root getlibs
sudo chmod +x getlibs
sudo mv -n getlibs /usr/local/bin

2) Installa la libreria a 32 bit:

sudo /usr/local/bin/getlibs -p gnome-keyring:i386

Se hai ricevuto questo messaggio di errore:

Failed to download file http://mirrors.kernel.org/ubuntu/pool/main/g/gnome-keyring/gnome-keyring_3.4.1-4ubuntu1~precise1_i386.deb

quindi scarica il file qui:

wget https://launchpad.net/~gnome3-team/+archive/gnome3/+files/gnome-keyring_3.4.1-4ubuntu1~precise1_i386.deb

e fai:

/usr/local/bin/getlibs -i "path-of-the-file"/gnome-keyring_3.4.1-4ubuntu1~precise1_i386.deb

3) Crea il collegamento simbolico:

sudo mkdir -p /usr/lib/i386-linux-gnu/pkcs11/ 
sudo ln -s /usr/lib32/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so

Ora esegui la tua app Crossover / Wine e l'errore scompare.


5
Per coloro che hanno errori nel creare il collegamento simbolico crea una directory chiamata pkcs11 in / usr / lib / i386-linux-gnu, solo tu crei il collegamento simbolico. Ho avuto lo stesso problema prima.

2
lasciami suggerire di mettere i collegamenti in / usr / local / lib / ...
rzr

Funziona per te il 12.10? Per me elimina l'errore ma il mio programma non si avvia ancora.
sup

9
getlibs non è necessaria, si può usare apt per scaricare (senza installare) debs dai repository nel vostro sources.list: apt-get download gnome-keyring:i386. Fornirei una risposta su come risolvere questo problema usando solo apt, ar e tar, tuttavia mi sembra che non riesca a rispondere a questa domanda.
Oscar Korz,

2
la soluzione di Vaab sembra molto più semplice e ha funzionato per me con 12.04. Suggerisco di provarlo per primo.
Lambart,

46

La soluzione a questo non deve essere più complessa di:

sudo apt-get install libp11-kit-gnome-keyring

per macchine a 64 bit. O

sudo apt-get install libp11-kit-gnome-keyring:i386

per macchine a 32 bit.

Almeno questo è il caso del 13.04 e non vedo alcun motivo per cui ciò non valga per il 12.04 / 12.10.


2
Trovo strano che le 2 risposte sopra con più voti non funzionassero, non funzionassero dal 12.04 al 13.04. Ma l'installazione dell'attuale pacchetto che wine diceva mancava mentre hai indicato qui ha funzionato. È un peccato che ho dovuto fare quelli di cui sopra per vedere in fondo questa risposta che funziona.
Luis Alvarado,

3
quel pacchetto non è disponibile in Ubuntu 12.04.
rik-shaw,

2
apt-get install gnome-keyring ha funzionato per me, per
64.04

2
Installazione di libp11-kit-gnome-keyring: i386 non risolve il problema in Ubuntu 13.10
malisokan

4
Risolto il problema per me su Ubuntu 14.04
panmari,

14

Probabilmente hai indovinato il necessario per ottenere il file /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so. Questo file fa parte di un pacchetto Ubuntu i386 che non può essere installato direttamente sul sistema amd64. Ma puoi ottenerlo facilmente:

cd $(mktemp -d)                      ## create and go to a temporary temp dir
apt-get download gnome-keyring:i386  ## download the i386 version of gnome-keyring
ar x gnome-keyring*.deb              ## Uncompress the package
tar xf data.tar.gz
## Finally move the file you need to the desired location:
sudo mv usr/lib/i386-linux-gnu/pkcs11 /usr/lib/i386-linux-gnu/

Questo è successo a me su un 12.10con wine-1.5.29, e i386 gnome-keyringversione è stata etichettata 3.6.1-0ubuntu1_i386, e questo ha funzionato per me.

Nota che se queste istruzioni non sono adatte a te, forse dovresti menzionare la versione e la gnome-keyringversione di Ubuntu . Grazie !


3
l' tar xf data.tar.gzdovrebbe essere tar xf data.tar.xz, almeno sul mio PC ... grazie
toto_tico

1
in realtà non ha funzionato, non esiste alcun file usr/lib/i386-linux-gnu/pkcs11nella cartella dei dati. Invece ci sono due directory in usr/lib: usr/lib/gnome-keyringeusr/lib/ubiquity
toto_tico

@toto_tico: ovviamente il tuo gnome-keyringpacchetto non è uguale al mio. Potresti fornire maggiori informazioni sulla tua versione e gnome-keyringversione di Ubuntu ? Ho aggiunto queste informazioni alla mia risposta per il confronto.
Vaab,

Grazie @vaab. Finalmente ho trovato la mia soluzione qui . Non riesco a pubblicare la soluzione perché sono nuovo in questa community.
toto_tico,

1
Ha funzionato per me con 12.04, grazie!
Lambart,

2

Un'altra opzione che ha funzionato per me è semplicemente reinstallare libp11-kit0

sudo apt-get install --reinstall libp11-kit0

Ciò non ha avuto alcun effetto per me su Ubuntu 14.10 /
incide il

1
Perché dovresti sottovalutare una risposta per 12.04, rispetto a come funziona il 14.10 ...
Brandon Bertelsen
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.