나는 이 질문 의 정보에 따라 프로그램에 싸여있다 . 이제 설치되었지만 실행 방법을 알 수 없습니다. 동일한 버전의 Ubuntu를 실행하는 친구는 동일한 방식으로 설치 한 후 시작하는 데 문제가 없었습니다.
이것이 내가 한 일입니다.
$ ./Psychonauts
./Psychonauts: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
그래서 나는 계속해서 :
$ sudo apt-get install libstdc++.so.6
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libstdc++.so.6
E: Couldn't find any package by regex 'libstdc++.so.6'
며칠 전에 Linux를 사용하기 시작했습니다.
좋아, 그래서 apt 파일과 apt 파일 업데이트를 설치했다.
그러나 우리는 또 다른 걸림돌을 쳤다.
usagiyojimbo@Usagi:~$ sudo apt-file find libstdc++.so.6
[sudo] password for usagiyojimbo:
E: The cache is empty. You need to run 'apt-file update' first.
내가 할 때 나는 그렇게 말했다.
File is up-to-date.
Ignoring source without Contents File:
a link they won't let me post
또는
File is up-to-date.
Downloading Index a link
No Index available.
Downloading complete file a link
Psychonauts를 실행하려고 할 때 여전히 같은 오류가 발생합니다.
답변
오류 메시지가 나타납니다.
E: Unable to locate package libstdc++.so.6 E: Couldn't find any package by regex 'libstdc++.so.6'
설치할 libstdc++.so.6
수없는 파일을 설치하려고 했기 때문에 데비안 패키지에 들어 있기 때문입니다.
apt-file
해당 파일이 포함 된 패키지를 검색 하는 데 사용할 수 있습니다 . 설치하려면 다음을 입력하십시오.
sudo apt-get install apt-file
그런 다음 색인을 업데이트해야합니다.
sudo apt-file update
그런 다음 파일이 포함 된 패키지를 검색 할 수 있습니다 libstdc++.so.6
.
sudo apt-file find libstdc++.so.6
그런 다음 검색된 파일이 포함 된 많은 패키지를 찾습니다. 귀하의 경우 올바른 패키지는 libstdc++6
다음과 같습니다
libstdc++6: /usr/lib/x86_64-linux-gnu/libstdc++.so.6
그런 다음 필요한 패키지를 설치할 수 있습니다.
sudo apt-get install libstdc++6
답변
Psychonauts는 32 비트 응용 프로그램이라고 생각합니다. 다음을 설치해야합니다.
apt-get install lib32stdc++6
답변
당신은 거의 거기에 있습니다. 필요한 것보다 몇 글자 더 사용했습니다.
sudo apt-get install libstdc++6
… 트릭을해야합니다.
답변
나는 당신을 위해 일한 방식을 당신과 공유 할 것입니다. 우선이 파일의 다른 사본이 이미 시스템에 있는지 확인해야합니다.
$ locate libstdc++.so.6
출력 :
/snap/core/6405/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core/6405/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
/snap/core/6405/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21-gdb.py
/snap/core/6531/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core/6531/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
/snap/core/6531/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21-gdb.py
/snap/core/6673/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core/6673/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
/snap/core/6673/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21-gdb.py
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
보다시피이 /snap/core/...
파일 에는 여러 버전이 있습니다. (이 방법이 적합하지 않은 경우)
기존 파일에서 백업해야합니다.
$ sudo mv /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.backup
그런 다음 최신 스냅 버전을 손상된 파일로 바꿀 수 있습니다.
sudo cp /snap/core/6673/usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/x86_64-linux-gnu/libstdc++.so.6
원하는 명령을 다시 실행 해보십시오.