우분투 LTS 12.04 64 비트에서 와인을 사용하여 프로그램을 시작하려고합니다.
이렇게하면 다음과 같은 오류 메시지가 나타납니다.
/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 비트를 설치하는 패키지가 있습니까?
최신 정보:
1.4의 우분투에서 버그로 나타남
https://launchpad.net/~ubuntu-wine/+archive/ppa
이 단계를 사용했고 응용 프로그램이 작동했습니다.
http://www.noobslab.com/2012/04/install-wine-152-on-ubuntu.html
정확히 왜 그런지는 모르지만 1.5를 사용하면 오류를 무시하는 것으로 보입니다.
답변
이 솔루션은 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 비트 lib에 대한 링크를 수행하고 /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so : 잘못된 ELF 클래스 : ELFCLASS64 오류가 발생했습니다.
참고 : 시작하기 전에 64 비트 라이브러리에 대한 링크를 만든 경우 제거하십시오.
해결책:
해결 방법은 다음과 같습니다. 참고 나는 와인 1.4를 사용하는 크로스 오버 11.3을 사용하고 있으므로 와인 사용자에게도 적합합니다.
getlib에 대한 추가 관련 정보는 여기 에서 찾을 수 있습니다 .
1) getlibs를 설치하십시오 :
UODATE 3/2013 : https://github.com/spaetzlecode/getlibs 에서 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
하고 :
/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
이제 크로스 오버 / 와인 앱을 실행하면 오류가 사라집니다.
답변
이에 대한 솔루션은 다음보다 더 복잡 할 필요는 없습니다.
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에서 이것이 사실이 아닌 이유는 없습니다.
답변
당신은 아마 파일을 얻는 데 필요한 것으로 추측했다 /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so
. 이 파일은 amd64 시스템에 직접 설치되지 않는 i386 ubuntu 패키지의 일부입니다. 그러나 쉽게 얻을 수 있습니다.
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
되어 있으며 이것은 나를 위해 일했습니다.
이 지침이 자신에게 맞지 않으면 우분투 릴리스와 gnome-keyring
버전 을 언급해야 할 수도 있습니다 . 감사 !
답변
나를 위해 일한 또 다른 옵션은 단순히 libp11-kit0을 다시 설치하는 것입니다.
sudo apt-get install --reinstall libp11-kit0