'digest/sha1'
이 필요한 문제가 있습니다.루비의 LoadError
~$ ./configure --prefix=$HOME/usr --program-suffix=19 --enable-shared
~$ make
~$ make install
~$ irb19
irb(main):001:0> require 'digest/sha1'
LoadError: dlopen(/Users/matan/usr/lib/ruby19/1.9.1/i386-darwin9.8.0/digest/sha1.bundle, 9): Symbol not found: _rb_Digest_SHA1_Finish
Referenced from: /Users/matan/usr/lib/ruby19/1.9.1/i386-darwin9.8.0/digest/sha1.bundle
Expected in: flat namespace
- /Users/matan/usr/lib/ruby19/1.9.1/i386-darwin9.8.0/digest/sha1.bundle
from (irb):1:in `require'
from (irb):1
from /Users/matan/usr/bin/irb19:12:in `<main>'
irb(main):002:0>
표준 모듈 중 일부는 괜찮 으면 하나, 그렇지 않은 모듈도 있습니다. 내가 require 'yaml'
또는 심지어 require 'digest'
라고 말하고 싶다면 잘 작동합니다. Ruby 1.9.1-p378과 함께 OS X 10.5.8을 사용하고 있습니다. Ruby 1.8.6의 시스템 전체 설치가 정상적으로 작동합니다.
그냥 지난 주에 Ruby를 제거하고 다시 설치했습니다. Ruby를 처음 설치했을 때 유사한 방식으로 소스 코드를 설치했는데 로컬 $HOME/usr
디렉토리에 접두어가 붙어있었습니다. 나는 각각의 모든 파일을 제거하려고 시도했다. make install
이 설치되고, 다시 설치되었지만, 도움이되지 않았다.
문제점의 해결 방법은 무엇입니까?
실제로 RVM의 Ruby 1.9.2 헤드에는 digest/sha1이 필요하지 않습니다. 그러나 나는 근원지에서 설치할 때 무엇이 잘못되는지 궁금합니다. 1.9.2 머리가 아닌 다른 Ruby를 설치하는 데 문제가 있습니다. 그러나 이것은 새롭고 독특한 질문에 속한다고 생각합니다. – wilhelmtell
OpenSSL을 완전히 제거하여 임베디드 Linux 시스템에서 이러한 문제가 수정 된 것을 보았습니다. 하지만 실제로 루비 젬이 깨졌습니다. –
나는'rvm 패키지 인스톨 openssl'이 아니라'rvm 패키지 인스톨 openssl'이 있어야한다고 생각합니다. – Oleander