Gem 설치 시 "OpenSSL" 오류 발생

Gem 설치 시 "OpenSSL" 오류 발생

나는 적어도 일주일 동안 gem을 사용하여 내 Raspberry PI에 Bettercap을 설치하려고 노력했지만 다음을 입력할 때마다 다음을 입력합니다.

sudo gem install bettercap

다음과 같은 오류 메시지가 나타납니다.

 ERROR:  While executing gem ... (Gem::Exception)
    Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources

다른 사람들에게 제안된 모든 수정 사항은 결과를 얻지 못했습니다.

옵션 1: "http 옵션"

답변에 따르면필리포 데 보르톨리존재하다이 스레드동일한 문제의 경우 https 프로토콜을 비활성화하면 문제가 해결될 수 있습니다. 그러나 다음 명령을 실행한 후:

gem source -r https://rubygems.org/ 
gem source -a http://rubygems.org/

여전히 다음 오류가 발생합니다.

ERROR:  While executing gem ... (Gem::Exception)
        Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources

옵션 2: 재구축

제안대로필리포 데 보르톨리내부에같은 스레드OpenSSL을 설치한 후 Ruby를 다시 설치했는데 내 Raspbian이 OpenSSL과 함께 제공되었고 실행해보니 sudo apt-get install openssl최신 버전이라는 것만 확인되었습니다. 저는 이것을 얻기 시작한 이후로 Ruby를 3번이나 다시 빌드했습니다.

옵션 3: 로컬로 설치

gem을 로컬에 설치할 수 있다는 사실을 확인한 후 소스 코드를 설치하고 실행했습니다.

sudo gem install --local bettercap-1.6.2b.gem

출력을 얻습니다.

ERROR:  Could not find a valid gem 'em-proxy' (>= 0.1.8, ~> 0.1) in any repository

나는 단지 로컬 디스크를 검색하고 있었기 때문에 필요한 종속성을 찾을 수 없다고 추측했습니다. 그래서 "em-proxy"를 로컬에 설치하여 필요한 종속성을 찾기로 결정했습니다. 여기에는 종속성도 필요했습니다. 엄청난. 그래서 제 정신을 위해 버리기로 결정했지만 전반적으로 비실용적이었습니다.


결론적으로,이 오류를 제거하거나 최소한 우회하려면 어떻게 해야 합니까?

궁금하신 경우를 대비해 결과는 다음과 같습니다 gem -v.

2.4.5

출력 ruby -v:

ruby 2.2.2p95 (2015-04-13 revision 50295) [armv6l-linux-eabihf]

답변1

Debian/Ubuntu의 소스에서 Ruby 2.3.6을 컴파일할 때도 이 문제가 발생했습니다. 전체 지침과 같이 pkg-config추가로 설치하여 문제 를 해결했습니다.libssl-dev

$ sudo apt install \ make \ gcc \ pkg-config \ libssl1.0-dev \ libreadline-dev \ libgdbm-dev \ zlib1g-dev \ libyaml-dev \ libffi-dev \ libgmp-dev \ openssl $ ./configure --disable-install-rdoc $ make -j2 $ sudo make install

libssl-dev패키지는 호환되지 않습니다 ruby2.3(참조:https://github.com/rvm/rvm/issues/3862#issuecomment-277512130) 따라서 Debian/Stretch 또는 Ubuntu/Xenial에서는 libssl1.0-dev.

관련 정보