Вино не может найти gnome-keyring-pkcs11.so

Я пытаюсь запустить программу с использованием Wine в Ubuntu LTS 12.04 64 bit

При этом я получаю следующее сообщение об ошибке ...

/usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux->gnu/pkcs11/gnome-keyring-pkcs11.so: невозможно открыть общий объектный файл: такого файла нет или> каталог

Когда я пытаюсь создать символическую ссылку на 64-битные библиотеки, я получаю следующее ...

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

Есть ли пакет, который устанавливает как 32-битную, так и 64-битную версию?

ОБНОВЛЕНИЕ:

Кажется, что это ошибка в Ubuntu w / 1.4

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

Я использовал эти шаги, и мое приложение работало

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

Не совсем точно, почему, но, похоже, игнорируется ошибка, если вы используете 1.5. [ 1113]

62
задан 17 May 2013 в 17:18

4 ответа

Решение этой проблемы не должно быть более сложным, чем:

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

для 64-битных машин. Или

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

для 32-битных машин.

По крайней мере, так обстоит дело в 13.04, и я не вижу причин, почему это не будет справедливо в 12.04 / 12.10.

0
ответ дан 17 May 2013 в 17:18

Другой вариант, который работал для меня, это просто переустановить libp11-kit0

sudo apt-get install --reinstall libp11-kit0
0
ответ дан 17 May 2013 в 17:18

Вы, наверное, догадались, что вам нужно получить файл /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so. Этот файл является частью пакета u38ntu i386, который не устанавливается непосредственно в вашу систему amd64. Но вы можете легко получить это:

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/

Это случилось со мной на 12.10 с wine-1.5.29, а версия i386 gnome-keyring была помечена 3.6.1-0ubuntu1_i386, и это сработало для меня.

Обратите внимание, что если эти инструкции вам не подходят, возможно, стоит упомянуть ваш релиз Ubuntu и версию gnome-keyring. Спасибо!

0
ответ дан 17 May 2013 в 17:18

Это решение работает для Ubuntu 12.04 64bit

У меня изначально была такая ошибка:

/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

Затем я сделал ссылку ln -s на 64-битную библиотеку и получил эту ошибку: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: неправильный класс ELF: ELFCLASS64

примечание: перед тем как начать, удалите ссылку на 64-битную библиотеку, если вы ее создали. 1113]

Решение:

Вот как это исправить. Обратите внимание, что я использую Crossover 11.3, который использует Wine 1.4, поэтому он также должен работать для пользователей вина.

Дополнительную информацию о getlibs можно найти здесь , здесь .

1) Установите getlibs:

UODATE 3/2013: Загрузите getlibs с 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) Установите 32-битную библиотеку:

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

Если вы получили это сообщение об ошибке:

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

, загрузите файл прямо здесь:

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

и выполните: [ 1122]

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

3) Создайте символическую ссылку:

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

Теперь запустите приложение Crossover / Wine и ошибка исчезнет.

0
ответ дан 17 May 2013 в 17:18

Другие вопросы по тегам:

Похожие вопросы: