Le vin ne trouve pas gnome-keyring-pkcs11.so

J’essaie de démarrer un programme utilisant du vin sur Ubuntu LTS 12.04 64 bits

Lorsque je fais cela, je reçois le message d’erreur suivant …

/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux->gnu/pkcs11/gnome-keyring-pkcs11.so: impossible d’ouvrir le fichier object partagé: non tel fichier ou> répertoire

Lorsque j’essaie de faire un lien symbolique avec les bibliothèques 64 bits, bien sûr, j’obtiens ce qui suit …

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 

Existe-t-il un package qui installe les versions 32 bits et 64 bits?

METTRE À JOUR:

Semble être un bug dans Ubuntu w / 1.4

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

J’ai utilisé ces étapes et mon application a fonctionné

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

Je ne sais pas exactement pourquoi mais il semble ignorer l’erreur si vous utilisez la version 1.5.

Cette solution fonctionne pour Ubuntu 12.04 64bit

J’ai eu à l’origine cette erreur:

 /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 

Ensuite, j’ai créé un lien ln -s vers la bibliothèque 64 bits et j’ai obtenu l’erreur suivante: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: mauvaise classe ELF: ELFCLASS64

remarque: avant de commencer, supprimez le lien vers la bibliothèque 64 bits si vous l’avez créé.

Solution:

Voici comment y remédier. Notez que j’utilise Crossover 11.3, qui utilise Wine 1.4, il devrait donc également fonctionner pour les utilisateurs de vin.

Vous trouverez ici d’autres informations relatives à getlibs.

1) Installez getlibs:

UODATE 3/2013: Téléchargez les getlibs à l’ adresse 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) Installez la bibliothèque 32 bits:

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

Si vous avez cette erreur de message:

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

puis téléchargez le fichier ici:

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

et fait:

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

3) Faites le lien symbolique:

 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 

Maintenant, lancez votre application Crossover / Wine et l’erreur disparaît.

La solution à ce problème ne doit pas être plus complexe que:

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

pour les machines 64 bits. Ou

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

pour les machines 32 bits.

C’est du moins le cas dans 13.04 et je ne vois pas pourquoi cela ne serait pas vrai dans 12.04 / 12.10.

Vous avez probablement deviné que vous /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so obtenir le fichier /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so . Ce fichier fait partie d’un paquet ubuntu i386 qui ne s’installe pas directement sur votre système amd64. Mais vous pouvez l’obtenir facilement:

 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/ 

Cela m’est arrivé sur un 12.10 avec wine-1.5.29 , et la version de gnome-keyring i386 était étiquetée 3.6.1-0ubuntu1_i386 , et cela a fonctionné pour moi.

Veuillez noter que si ces instructions ne vous conviennent pas, vous devriez peut-être mentionner votre version d’ubuntu et la version de gnome-keyring . Merci !

Une autre option qui a fonctionné pour moi est simplement de réinstaller libp11-kit0.

 sudo apt-get install --reinstall libp11-kit0