공유 라이브러리를로드하는 중 오류 : libopenal.so.1 (우분투 14.10의 게임 'pacapong')


11

Linux 용 게임 pacapong 을 다운로드하고 실행 파일을 실행하려고 시도하여 오류가 발생했습니다.

$ ./runner 

./runner: error while loading shared libraries: libopenal.so.1: 
cannot open shared object file: No such file or directory

분명히 로딩의 필요성이 있습니다 libopenal.so.1.

$ objdump -p ./runner |grep libopenal.so.1

NEEDED libopenal.so.1

거기에 libopenal.so.1거짓말을 /usr/lib/x86_64-linux-gnu내가 할 수 있습니다 :

$ ldd libopenal.so.1
linux-vdso.so.1 =>  (0x00007fffcdbbb000)

...

이 실행 파일 (./runner)을 루트로 실행하지 않습니다 (이 문제가 불충분 한 권한과 관련 될 수있는 경우, 가정하지 않은 것).

그렇다면 다른 방법을 시도해 볼 수 있습니까?

답변:


12

64 비트 Linux에서 실행하려고하는 32 비트 게임이기 때문에 오류가 발생합니다. 어떤 패키지가 누락되었는지 알아 내기 위해 인터넷 검색 오류 메시지를 통해 오류를 해결했습니다. 게임을 실행하기 위해 다음 패키지를 설치했습니다.

sudo apt-get install libxxf86vm1:i386 libglu1-mesa:i386 libopenal1:i386 libssl1.0.0:i386

이러한 패키지 설치의 기능과 문제 해결 방법에 대해 자세히 설명해 주시겠습니까?
— Michael Lindman

답변 주셔서 감사합니다, 문제를 해결합니다. 거기에서 당신은 시스템에 관한 모든 것을 알고 있다고 생각하고 실제로 그것에 대해 알고 있지만, 당신은 그것을 생각하지 않습니다 ...;)
— de-facto

이. GOG는 32 비트 Linux와 연결된 게임을 번들로 제공하므로 (이유) 64 비트 시스템을 사용하는 경우 64 비트 및 32 비트 버전 용 OpenGL / etc 라이브러리가 모두 있어야합니다. 알고있는 라이브러리가 없다는 것을 알려주기 때문에 혼란 스럽습니다.
— Katastic Voyage

0

앞으로 ldd를 ./runner에서 실행하면 필요한 라이브러리, 누락 된 경우 및 i386 또는 64 비트인지 여부를 알려줍니다.

./runner에 $ ldd

/ undertale / game $ ldd ./runner

linux-gate.so.1 (0xf7798000)

libgtk3-nocsd.so.0 => /usr/lib/i386-linux-gnu/libgtk3-nocsd.so.0 (0xf7759000)

libstdc ++. so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf75d3000)

...

libXrandr.so.2 => 찾을 수 없음

libbsd.so.0 => /lib/i386-linux-gnu/libbsd.so.0 (0xf6b41000)

libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf6b3d000)

libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf6b36000)

참고 i386에 대한 xrandr이 여전히 누락되었습니다. 그래서 이것은 아직 작동하지 않을 것입니다.

$ ./ 주자

./runner : 공유 라이브러리를로드하는 중 오류 발생 :> libXrandr.so.2 : 공유 오브젝트 파일을 열 수 없습니다 : 해당 파일 또는 디렉토리가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.