2017-10-12 9 views
0

내가 $ rvm install ruby-2.4.2 사용 RVM을 사용하여 2.4.2로 루비 2.0에서 업데이트 및 설치시 다음과 같은 오류 메시지가 나타날 해요 :Gemset 오류가 루비로 업데이트 할 때 2.4.2

Making gemset ruby-2.4.2 pristine - please wait 

'command gem pristine --extensions bigdecimal --version 1.3.0 gem-wrappers --version 1.3.2 io-console --version 0.4.6 json --version 2.0.4 openssl --version 2.0.5 psych --version 2.2.2' failed, you need to fix this gems manually. 
Error running '__rvm_with ruby-2.4.2 gemset_pristine', 
please read /Users/myname/.rvm/log/1507820191_ruby-2.4.2/gemset.pristine-ruby-2.4.2.log 

Making gemset [email protected] pristine - please wait 

'command gem pristine --extensions bigdecimal --version 1.3.0 io-console --version 0.4.6 json --version 2.0.4 openssl --version 2.0.5 psych --version 2.2.2' failed, you need to fix this gems manually. 
Error running '__rvm_with [email protected] gemset_pristine', 
please read /Users/myname/.rvm/log/1507820191_ruby-2.4.2/[email protected] 

난 ...하지 이것이 무엇을 의미하는지 또는 내가 다음에해야할 일이 무엇인지 확신 할 수 있습니다. 이견있는 사람? MacOS 10.12.6을 실행 중입니다.

[편집] : Here's a copy 오류 로그.

답변

0

이 수정 발견 실행하여 해결되었다 https://github.com/rvm/rvm/issues/4090 GitHub의에 아주 유사한 문제가있다
$ xcode-select --install

그 zlib 디렉토리. 이 스레드의 누군가가 지적했듯이, 이것은 필요하지 않습니다. 왜 문제가 발생했는지 아직 확실하지 않습니다.

$ brew install zlib 
$ rvm remove 2.4.2 
$ rvm install 2.4.2 —with-zlib-dir=/usr/local/Cellar/zlib/1.2.11 
1

RVM 문서에 따르면 명령에서 ruby를 사용하지 않습니다.
다음과 같아야합니다. $ rvm install 2.4.2
중요한지 여부는 확실하지 않습니다. RVM과 홈 브루를 업그레이드 해 보셨습니까?

는 [편집] 로그 파일에서이 정보를 바탕으로 :

bigdecimal-1.3.0 +gemset_pristine:20> gem pristine --extensions bigdecimal --version 1.3.0 
ERROR: Loading command: pristine (LoadError) 
    cannot load such file -- zlib 
ERROR: While executing gem ... (NoMethodError) 
    undefined method `invoke_with_build_args' for nil:NilClass 
+gemset_pristine:21> _failed+=('bigdecimal --version 1.3.0') 

는 ZLIB 문제처럼 보인다. 명령 줄 도구를 설치 (또는 다시 설치)하십시오. 그것은 가리키는 동안 루비를 설치하는 다시 다음 양조를 사용하여 ZLIB를 설치 포함이 RVM GitHub issue에서 참조로 $ brew doctor

+0

을 실행하는 것이 었습니다. 또한 RVM [1.29.3] 및 Homebrew [1.3.5] – strobodyne

+0

의 최신 버전을 실행하고 있습니다. 10.11.6 이후로 테스트 할 수 없습니다. 오류에서 언급 한 로그 파일을 보았습니까? –

+0

그랬지만 오류 로그에는 터미널 출력이 제공하지 않은 유용한 정보가 들어 있지 않은 것으로 보입니다. 그러나 나는 상형 문자를보고 있을지도 모른다. 여기있다 : https://gist.github.com/gwijthoff/8a3e485537787604ac8d1bd4991ea889 – strobodyne

0

잠시 후 SASS를 사용해야하는 상황에서이 문제가 발생했습니다. 그 시간 동안 나는 엘 캐피 탄으로 업그레이드했다. 그래서 Ruby는 'Old'였습니다.

다음 단계를 실행하여 많은 단계를 줄일 수 있습니다 (최신 Ruby 버전에 대한 사전 지식이 있음).


xcode-select --install brew install zlib rvm reinstall ruby-<latest_version> --with-zlib-dir=/usr/local/Cellar/zlib/<latest_version> 내가 그것에 대해 가야했다 방법이었다. 나는 결국 엔 제거 할 필요가 없었지만 나는 많은 잘못을 돌 았습니다.그런 다음

에 설치되어 zlib

brew install zlib

이 디렉토리 ZLIB의 메모를 받아 설치

xcode-select --install

:

처음에 나는 최신 엑스 코드를 얻을이 줄을 실행했다

/usr/local/Cellar/zlib/1.2.11

다음 업데이트 nvm

\ 컬 -ssl https://get.rvm.io | bash -s stable --ruby

이 단계를 수행하면 최신 버전의 ruby를 실행하고 있습니다. 2.4.1. 그러나 zlib는 루비와 연결되지 않았습니다.

그래서 마지막 단계는 내가 같은 결과는`$의 RVM은 2.4.2`는 그렇게 중요하지 않습니다 설치 실행 얻을 다시 설치

rvm reinstall ruby-2.4.1 --with-zlib-dir=/usr/local/Cellar/zlib/1.2.11