RedHat에 소프트웨어를 설치할 때 Libstdc++ 종속성 오류가 발생합니다.

RedHat에 소프트웨어를 설치할 때 Libstdc++ 종속성 오류가 발생합니다.

이 질문이 여러 번 요청되었다는 것을 알고 있지만 답변을 읽은 후에도 여전히 답을 얻을 수 없습니다.

라는 것을 설치하려고합니다.오르비에토RedHat Enterprise 7에서 다음 오류가 발생합니다.

[adam@pc bin]$ sudo ./ovito
[sudo] password for adam: 
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libGui.so)
./ovito: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libCore.so)
./ovito: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libCore.so)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Concurrent.so.5)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Widgets.so.5)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Gui.so.5)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Network.so.5)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Core.so.5)
./ovito: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/adam/Downloads/ovito-2.9.0-x86_64/bin/../lib/ovito/libQt5Core.so.5)

이 기사의 첫 번째 답변에서 제안한 대로 최신 libstdc++ 패키지를 설치했습니다.

libX11.so.6을 찾을 수 없습니다

결과:

[root@pc bin]# yum -y install libstdc++
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
Package libstdc++-4.8.5-16.el7.x86_64 already installed and latest version
Nothing to do

여기 대부분의 StackExchange 답변에서 제안한 대로 simlink(?) 수정을 시도했습니다. 나는 gnu.org의 명령을 따랐습니다.

https://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.how_to_set_paths

그리고 이 기사의 첫 번째 답변에 나온 명령은 다음과 같습니다.

https://stackoverflow.com/questions/20357033/how-to-fix-program-name-usr-lib-x86-64-linux-gnu-libstdc-so-6-version-cxx

마지막으로 다음을 시도했습니다.

1

LD_LIBRARY_PATH=/usr/local/lib64/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

2

export LD_LIBRARY_PATH=${prefix}/lib64:$LD_LIBRARY_PATH

...

그리고 다른 조합. 나를 혼란스럽게 하는 것은 /usr/local/lib64길이 있고, 길이 있는 것 같다는 것이다 computer/lib64.


이 문서에서는 유사한 문제가 있는 사용자를 위해 RedHat Enterprise 버전 5 및 6용 스크립트를 제공하지만 RedHat/RHEL 7용 스크립트는 제공하지 않습니다.

RHEL 5 64비트 시스템에서 GLIBCXX_3_4_9 라이브러리가 있는 애플리케이션에는 libstdc++가 필요합니다.

(스크립트를 실행하는 방법을 아직 모른다는 것은 아닙니다)

답변1

나는 이 특정 프로그램(Ovito)의 소프트웨어 개발자에게 이메일을 보냈고 그는 나에게 다음 지침을 제공했습니다.

이전 버전의 OVITO 버전 2.8.2를 다운로드하고 압축을 풉니다.

http://ovito.org/download/

lib/ovito/ 디렉터리에는 stdlibc++.*라는 두 개의 파일이 있으며 이를 최신 OVITO 패키지(v2.9.0)의 동일한 위치에 복사합니다. 그런 다음 실행해 보십시오.

이 stdlibc++ 라이브러리는 정확히 OVITO에 필요한 버전입니다. 그러나 일부 시스템에서는 시스템 버전의 libstdc++가 필요한 OpenGL 그래픽 드라이버와 충돌을 일으키기 때문에 더 이상 바이너리 패키지에 포함되지 않습니다.

이 지침을 따르면 Ovito 2.9.0이 올바르게 설치되었습니다.

관련 정보