it-swarm-eu.dev

Víno nemůže najít gnome-keyring-pkcs11.so

Zkouším spustit program pomocí vína na 64bitovém Ubuntu LTS 12.04

Když to udělám, zobrazí se následující chybová zpráva ...

/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux->gnu/pkcs11/gnome-keyring-pkcs11.so: nelze otevřít soubor sdílených objektů: Ne takový soubor nebo> adresář

Když se pokusím zkomprimovat 64bitové knihovny, dostanu samozřejmě následující ...

[email protected]:~/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

Existuje balíček, který instaluje 32bitové i 64bitové?

AKTUALIZACE:

Zdá se, že je chyba v Ubuntu w/1.4

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

Tyto kroky jsem použil a moje aplikace fungovala

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

Nejste si jisti, proč přesně, ale zdá se, že chybu ignorovat, pokud použijete 1.5.

62
Jackie

Toto řešení funguje pro Ubuntu 12.04 64bit

Původně jsem měl tuto chybu:

/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

Pak jsem udělal ln -s odkaz na 64bitový lib a dostal tuto chybu: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: špatná třída ELF: ELFCLASS64

poznámka: předtím, než začnete, odeberte odkaz na 64bit lib, pokud jste jej vytvořili.

Řešení:

Zde je návod, jak to opravit. Poznámka: Používám Crossover 11.3, který používá víno 1.4, takže by měl fungovat i pro uživatele vína.

Další související informace k getlibs najdete zde .

1) Nainstalujte getlibs:

UODATE 3/2013: Stáhnout getlibs z 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) Nainstalujte 32bitovou knihovnu:

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

Pokud se vám tato chybová zpráva:

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

pak si stáhněte soubor přímo zde:

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

a dělej:

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

3) Vytvořte symbolický odkaz:

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

Nyní spusťte aplikaci Crossover/Wine a chyba je pryč.

42
Nathan Campbell

Řešení toho nemusí být složitější než:

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

pro 64bitové stroje. Nebo

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

pro 32bitové stroje.

Přinejmenším je tomu tak v 13.04 a nevidím žádný důvod, proč by to neplatilo v 12.04/12.10.

47
andy.holmes

Pravděpodobně jste uhádli, co potřebujete k získání souboru /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so. Tento soubor je součástí balíčku Ubuntu i386, který se nenainstaluje přímo do vašeho systému AMD64. Ale můžete si to snadno:

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/

To se mi stalo na 12.10 s wine-1.5.29 a i386 gnome-keyring verze byla označena 3.6.1-0ubuntu1_i386, a to pro mě fungovalo.

Vezměte prosím na vědomí, že pokud se tato instrukce nehodí pro vás, možná byste měli uvést své vydání Ubuntu a gnome-keyring verze. Dík !

14
vaab

Další možností, která pro mě fungovala, je jednoduše přeinstalovat libp11-kit0

Sudo apt-get install --reinstall libp11-kit0
2