libssl.so.0.9.8: 공유 객체 파일을 열 수 없습니다. 해당 파일이나 디렉터리가 없습니다.

libssl.so.0.9.8: 공유 객체 파일을 열 수 없습니다. 해당 파일이나 디렉터리가 없습니다.

설치 후 Cloud9 IDE를 로컬에서 실행하려고 하면 다음 오류가 발생합니다.

# bin/cloud9.sh
Linux 64 bit
support/node-builds-v4/node-linux64: error while loading shared libraries: libssl.so.0.9.8: cannot open shared object file: No such file or directory

라이브러리가 심볼릭 링크를 통해 다른 곳에 /lib위치 하기 때문에 이상해 보입니다 ./usr/lib

확인하려면 다음은 기본 파일입니다.

# ls -l /usr/lib | grep libssl
-r-xr-xr-x. 1 root root   319816 Oct  6  2014 libssl.so.0.9.8

파일을 찾지 못하는 이유는 무엇입니까? 다른 변수에 포함해야 합니까? $PATH아니면 그 이유는 무엇입니까?

고쳐 쓰다:

이것은 SSL의 더 광범위한 문제인 것 같습니다.

# git submodule update --init --recursive
Cloning into 'support/sass'...
fatal: remote error:
  Repository not found.
Clone of 'git://github.com/visionmedia/sass.js.git' into submodule path 'support/sass' failed
Failed to recurse into submodule path 'support/connect'

실패한 모듈은 ssl다운로드해야 하지만 다운로드한 다른 모듈은 다운로드하지 않습니다.

# cat .gitmodules
[submodule "support/socket.io-client"]
    path = support/socket.io-client
    url = http://github.com/ajaxorg/socket.io-client.git
[submodule "support/uglify-js"]
    path = support/uglify-js
    url = http://github.com/ajaxorg/UglifyJS.git
[submodule "support/connect"]
    path = support/connect
    url = https://github.com/ajaxorg/connect.git

openssl 버전을 확인하세요.

# yum list installed openssl
Loaded plugins: refresh-packagekit, security, ulninfo
Installed Packages
openssl.x86_64                      1.0.1e-42.el6                      

64비트 설치용 라이브러리 openssl:

# ls -l /usr/lib64 | grep libssl
-rwxr-xr-x.  1 root root   261248 Nov  4 10:37 libssl3.so
lrwxrwxrwx.  1 root root       16 Dec  1 10:30 libssl.so -> libssl.so.1.0.1e
-rwxr-xr-x.  1 root root   324680 Jun  5  2014 libssl.so.0.9.8e
lrwxrwxrwx.  1 root root       16 Dec  1 10:29 libssl.so.10 -> libssl.so.1.0.1e
-rwxr-xr-x.  1 root root   444184 Jul 23 09:43 libssl.so.1.0.1e
lrwxrwxrwx.  1 root root       16 Dec  3 11:29 libssl.so.6 -> libssl.so.0.9.8e

답변1

RPM을 검색해 보면 알 수 있듯이libssl.so.0.9.8, 이것은 오래된 파일이며 openssl에 대해 나열한 RPM의 일부가 아닐 가능성이 높습니다. 당신은 할 수바라보다RPM의 일부인 파일 사용

rpm -ql openssl.x86_64

또한 파일이 어떤 RPM에 속해 있는지 확인할 수 있습니다.

rpm -qf /usr/lib/libssl.so.0.9.8

또 뭐야?건축학이 파일은

file /usr/lib/libssl.so.0.9.8

가장 가능성 있는 설명은 다음과 같습니다(하나 이상).

  • 파일이 다른 컴퓨터에서 복사되었습니다.
  • 32비트 라이브러리입니다
  • 이것ldconfig64비트 라이브러리 /usr/lib64( 아님 /usr/lib)에서 사용되는 경로입니다.

64비트 애플리케이션은 32비트 공유 라이브러리를 로드할 수 없으며 ldconfig허용된 위치에서만 해당 라이브러리를 찾을 수 있습니다.

관련 정보