복붙노트

[RUBY-ON-RAILS] 어떻게 오류를 "루비 설치가 정신이 없습니다"해결하기 위해?

RUBY-ON-RAILS

어떻게 오류를 "루비 설치가 정신이 없습니다"해결하기 위해?

나는 1.9.3 루비 설치하는 RVM을 사용했다. 이 성공적으로 설치하더라도, 그것은 libyaml에 대해 불평했다. 지금 때마다 나는이 경고 쇼를 (예를 들어 레일) 보석을 설치 싶어 :

It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.

나는 맥 OS X 10.7 (사자)를 사용합니다.

해결법

  1. ==============================

    1.나의 경우에는

    나의 경우에는

    rvm pkg install libyaml
    

    rvm reinstall ruby-1.9.3-p125
    

    이 문제를 해결했다.

    우분투를 사용하는 사람들을 위해, libtool이 위의 단계 이전에 설치되어 있는지 확인하십시오 :

    sudo apt-get install libtool
    

    맥 OS 사용자의 경우 (자작과 함께) :

    rm -rf /usr/local/lib/ruby/gems/ && brew reinstall ruby
    
  2. ==============================

    2.우분투와 RVM에 대한

    우분투와 RVM에 대한

    sudo apt-get install libtool
    rvm pkg install libyaml
    rvm reinstall 1.9.3
    

  3. ==============================

    3.RVM을 사용하는 것이 아니라 당신이 구축하고 처음부터 루비 1.9.3를 설치하지 않는 경우 - 예를 들어, 당신은 rbenv와 루비 버전을 관리하는 - 당신이 먼저 libyaml 설치해야합니다. http://pyyaml.org/에서을 얻으십시오; 순간, 당신이 원하는 파일이 http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz입니다. 결과 폴더에 타르 및 CD를 엽니 다. 그때:

    RVM을 사용하는 것이 아니라 당신이 구축하고 처음부터 루비 1.9.3를 설치하지 않는 경우 - 예를 들어, 당신은 rbenv와 루비 버전을 관리하는 - 당신이 먼저 libyaml 설치해야합니다. http://pyyaml.org/에서을 얻으십시오; 순간, 당신이 원하는 파일이 http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz입니다. 결과 폴더에 타르 및 CD를 엽니 다. 그때:

    ./configure --prefix=/usr/local
    make
    sudo make install
    

    이제 루비를 구축 할 준비가 된 것입니다. http://ftp.ruby-lang.org/pub/ruby/에서 다운로드 루비. 결과 폴더에 타르 및 CD를 엽니 다. 지금:

    ./configure --prefix=/wherever/you/want/it/to/go
    make
    make install
    

    rbenv를 사용하는 경우 (. 또는 아마도 sudo는 당신이 그것을 옮기고 위치에 따라 설치할 수 있도록), 당신은 당신이 글로벌 1.9.3-p194을 rbenv로 전환하면 근무하고있다 (또는 어떤 버전이 호출) 및 보석 알 - -version은 경고없이 작동합니다. 그것은 맥 OS X 10.6.8에 날 위해 일했습니다. (업데이트 :. 난 그냥 맥 OS X 10.8.1에이 시도하고 너무 잘이 일 것으로 보인다)

  4. ==============================

    4.

    brew install libyaml
    rvm reinstall 1.9.3
    

    (스노우 레오파드에) 나를 위해 일한 것입니다.

  5. ==============================

    5.내 경우에는 솔루션은 Gemfile에 정신 보석을 추가했다.

    내 경우에는 솔루션은 Gemfile에 정신 보석을 추가했다.

  6. ==============================

    6.나는이 문제를 가지고 있었다. libyaml 컴파일하지 않을 것입니다. 내가 libtool이 누락되었다 밖으로 그것은 변합니다.

    나는이 문제를 가지고 있었다. libyaml 컴파일하지 않을 것입니다. 내가 libtool이 누락되었다 밖으로 그것은 변합니다.

    yum install libtool
    yum install libyaml (or rvm pkg install libyaml)
    rvm reinstall 1.9.3
    

    그건 내 문제를 해결했다.

  7. ==============================

    7.

    $ brew doctor
    $ brew link libyaml
    
  8. ==============================

    8.당신이 사제와 맥 OS에 루비를 설치 한 경우,이 해결 방법을 시도해보십시오.

    당신이 사제와 맥 OS에 루비를 설치 한 경우,이 해결 방법을 시도해보십시오.

    RF RM은 / usr / 지방 / lib 디렉토리 / 루비 / 보석 / && 양조 다시 설치 루비

    이 설치된 모든 보석을 없애 않습니다. 보석 목록 설치된 보석의 목록을 저장보다도이 프로그램을 실행하기 전에.

  9. ==============================

    9.나는이 마지막으로 고정되었다. 문제는 내가 양조와 libyaml을 설치하더라도, 그것은 연결되지 않았다이었다. 나는 충돌하는 헤더 파일을 제거한 다음 링크 libyaml 맥주를 양조했다.

    나는이 마지막으로 고정되었다. 문제는 내가 양조와 libyaml을 설치하더라도, 그것은 연결되지 않았다이었다. 나는 충돌하는 헤더 파일을 제거한 다음 링크 libyaml 맥주를 양조했다.

  10. ==============================

    10.저도 같은 문제 (사자 10.7.4)을 가지고, 다음 루비를 다시 설치 업그레이드 RVM하여 고정

    저도 같은 문제 (사자 10.7.4)을 가지고, 다음 루비를 다시 설치 업그레이드 RVM하여 고정

    1) RVM https://rvm.io//rvm/install/ 업그레이드

    curl -L https://get.rvm.io | bash -s stable --ruby
    

    2) 그런 다음) RVM의 이전 버전 이전에 설치 되었었던 (1.9.3 루비 다시 설치 RVM을 사용하여

    rvm reinstall 1.9.3
    
  11. ==============================

    11.나는 libyaml 지원 루비 1.9.3를 다시 설치 :

    나는 libyaml 지원 루비 1.9.3를 다시 설치 :

    rvm reinstall 1.9.3 --with-libyaml
    

    나는 확실히 내가 정신을 설치하기 전에 1.9.3을 사용한다고했다 :

    rvm use 1.9.3
    

    나는 정신 설치 :

    gem install psych
    
  12. ==============================

    12.맥 OSX에 대한 RVM에 루비를 설치, 사용 autolibs는 libyaml 먼저 설치 제거의 libyaml 도움이 설치합니다.

    맥 OSX에 대한 RVM에 루비를 설치, 사용 autolibs는 libyaml 먼저 설치 제거의 libyaml 도움이 설치합니다.

    이것은 나를 위해 일한 :

    brew uninstall libyaml
    rvm autolibs enable
    rvm reinstall ruby-2.1.1
    
  13. ==============================

    13.

    sudo port install libyaml # or brew install libyaml
    rvm get latest
    rvm pkg install iconv
    rvm pkg install openssl
    rvm reinstall 1.9.3 --with-openssl-dir=~/.rvm/usr --with-iconv-dir=~/.rvm/usr
    
    curl -OL http://rubyforge.org/frs/download.php/75414/linecache19-0.5.13.gem
    curl -OL http://rubyforge.org/frs/download.php/75415/ruby-debug-base19-0.11.26.gem
    
    gem install linecache19-0.5.13.gem ruby-debug-base19-0.11.26.gem -- --with-ruby-include=$rvm_path/src/ruby-1.9.3-p125/
    gem install ruby-debug19
    
    rvm reload
    

    당신의 .rvmrc (CD의 출력, CD)를 다시로드

    bundle
    
  14. ==============================

    14.이 답변 아무도 나를 위해 일하지 않는다.

    이 답변 아무도 나를 위해 일하지 않는다.

    나는 https://github.com/sstephenson/ruby-build/issues/119에 내 대답을 발견 나는를 CentOS 6.3 가상 머신에입니다.

    당신이 루비 설치하기 전에 libyaml 설치해야합니다. 당신은 이미 다시 소스를 컴파일하기 전에 당신이 파일을 제거해야한다 루비 설치 한 경우!

    # cd to your ruby source location
    rm -rf /usr/local/lib/ruby # clean out ruby files
    ./configure
    make && make install
    gem -v # check if error is fixed
    
  15. ==============================

    15.나는 소스와 별도로 libyaml 파일을 구축하고 / usr / 지방 / lib 디렉토리에이를 설치했습니다. 루비는 RVM이 만든 여전히를 참조하지 않고 오히려 메이크 또는 그냥 / usr / 지방 / lib 디렉토리 / libyaml *에 ~ / .rvm / 루비 / 루비 1.9.3-p327 복사 시스템 LD_LIBRARY_PATH와 추문에 비해 / lib 디렉토리 /

    나는 소스와 별도로 libyaml 파일을 구축하고 / usr / 지방 / lib 디렉토리에이를 설치했습니다. 루비는 RVM이 만든 여전히를 참조하지 않고 오히려 메이크 또는 그냥 / usr / 지방 / lib 디렉토리 / libyaml *에 ~ / .rvm / 루비 / 루비 1.9.3-p327 복사 시스템 LD_LIBRARY_PATH와 추문에 비해 / lib 디렉토리 /

    즉, 경고를 앉았다.

  16. ==============================

    16.이 우분투에 나를 위해 일한 것입니다 : - libyaml-dev에 설치 (sudo는 apt-get을 libyaml-DEV 설치) - 설치 RVM + 루비 1.9.3

    이 우분투에 나를 위해 일한 것입니다 : - libyaml-dev에 설치 (sudo는 apt-get을 libyaml-DEV 설치) - 설치 RVM + 루비 1.9.3

  17. ==============================

    17.나는이 모든 대답을 시도하고 여전히 작동 얻을 수 없습니다. 나는 사제와 libyaml 설치 한 후 루비 1.9.3와 RVM에 2.0.0를 설치했습니다. 그것이 내가 정신 (libyaml를)없는 것을 불평 할 때마다. 그러나 libyaml를 설치하려고하면 이미 설치되어 나에게 말했다. 반복을 씻어. Urgh.

    나는이 모든 대답을 시도하고 여전히 작동 얻을 수 없습니다. 나는 사제와 libyaml 설치 한 후 루비 1.9.3와 RVM에 2.0.0를 설치했습니다. 그것이 내가 정신 (libyaml를)없는 것을 불평 할 때마다. 그러나 libyaml를 설치하려고하면 이미 설치되어 나에게 말했다. 반복을 씻어. Urgh.

    마지막으로, 제가 한 일은 제거 libyaml이었다. 그럼 난 (OSX에서 적어도) RVM 설치하고 더 직접적으로 종속성을 관리 할 수 ​​있습니다 RVM에 autolibs 수 있었다. 나는 루비를 설치 이제 때, RVM은 libyaml를 설치하고 오른쪽 자리에 것을 인식 할 수 있었다.

    당신은 다른 모든 옵션을 시도했습니다 그렇다면, libyaml을 제거 실제로 시도하고 다음 루비를 설치. 그것은의 오류 메시지에서 직관적 카운트하지만, 결국 나를 위해 일한 그 무엇의.

  18. ==============================

    18.나는, 나에게 일을 위의 해결 하나도 같은 문제 (센트 OS 5.7) 없었다.

    나는, 나에게 일을 위의 해결 하나도 같은 문제 (센트 OS 5.7) 없었다.

    // My console warning
    /usr/local/rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
    It seems your ruby installation is missing psych (for YAML output).
    To eliminate this warning, please install libyaml and reinstall your ruby.
    

    여러 다시 설치 횟수를 수행 한 후, 나는 1.9.1 대신 1.9.3의 루비 버전에서 YAML을 찾고 깨달았다. 그래서 난 다운 그레이드

    // obviously after installing `libyaml`
    rvm remove all
    rvm install 1.9.1
    rvm use 1.9.1 --default
    

    그리고 그것은 8D를했다!

  19. ==============================

    19.의에 CentOS 6.3 없음에 위했다. 설치 루비 문제를 해결하기 전에 그러나 소스에서 libyaml를 설치.

    의에 CentOS 6.3 없음에 위했다. 설치 루비 문제를 해결하기 전에 그러나 소스에서 libyaml를 설치.

    $ wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
    $ tar xzvf yaml-0.1.4.tar.gz
    $ cd yaml-0.1.4
    $ ./configure --prefix=/usr/local
    $ make
    $ sudo make install
    

    그리고

    rvm install 1.9.3
    gem install rails
    
  20. ==============================

    20.내가 사용하고 있습니다

    내가 사용하고 있습니다

    또한 번들 중에 다음과 같은 오류가 설치 얻었다

    여기에 / O는 보석 설치 정신을 가진 w는이 오류를 해결하는 방법에는 세 가지가 있습니다

        $ diff  -c .rvm/{src/rvm/,}scripts/functions/manage/ruby
        *** .rvm/src/rvm/scripts/functions/manage/ruby  2012-11-10 06:28:14.000000000 +0000
        --- .rvm/scripts/functions/manage/ruby  2013-01-25 17:18:00.000000000 +0000
        ***************
        *** 106,123 ****
                  # when relative is in effect libyaml is installed in ruby itself so it will be moved with ruby
                  prefix_path="${rvm_rubies_path}/${rvm_ruby_string}" libyaml
    
        !         __rvm_update_configure_env CFLAGS="-I${rvm_rubies_path}/${rvm_ruby_string}/include"
        !         __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib"
                  if [[ -d "${rvm_rubies_path}/${rvm_ruby_string}/lib64" ]]
        !         then __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib64"
                  fi
                else
                  libyaml_installed || libyaml # Installs libyaml
    
        !         __rvm_update_configure_env CFLAGS="-I${rvm_path}/usr/include"
        !         __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib"
                  if [[ -d "${rvm_path}/usr/lib64" ]]
        !         then __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib64"
                  fi
                fi
    
        --- 106,123 ----
                  # when relative is in effect libyaml is installed in ruby itself so it will be moved with ruby
                  prefix_path="${rvm_rubies_path}/${rvm_ruby_string}" libyaml
    
        !         __rvm_update_configure_env CFLAGS="-I${rvm_rubies_path}/${rvm_ruby_string}/include ${CFLAGS}"
        !         __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib ${LDFLAGS}"
                  if [[ -d "${rvm_rubies_path}/${rvm_ruby_string}/lib64" ]]
        !         then __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib64 ${LDFLAGS}"
                  fi
                else
                  libyaml_installed || libyaml # Installs libyaml
    
        !         __rvm_update_configure_env CFLAGS="-I${rvm_path}/usr/include ${CFLAGS}"
        !         __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib ${LDFLAGS}"
                  if [[ -d "${rvm_path}/usr/lib64" ]]
        !         then __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib64 ${LDFLAGS}"
                  fi
                fi
    
    
  21. ==============================

    21.NON-RVM은 방법을 설치 루비.

    NON-RVM은 방법을 설치 루비.

    % uname -a
    Linux localhost.localdomain 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013  x86_64 x86_64 x86_64 GNU/Linux
    
    % cat /etc/redhat-release
    CentOS release 6.4 (Final)
    
    % wget http://apt.sw.be/redhat/el5/en/x86_64/dag/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
    % sudo rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm"
    % sudo rpm -ivh rpmforge-release-0.3.6-1.el5.rf.*.rpm"
    

    이 파일을 편집하고 세트로 DISABLE rpmforge 0 = 사용 가능     % sudo는 VI /etc/yum.repos.d/rpmforge.repo

    % grep rpmforge ~/.aliases
    alias rpmforge "sudo yum --disablerepo='*' --enablerepo='rpmforge'"
    
    % rpmforge install libyaml libyaml-devel
    
    % sudo yum list installed | grep libyaml
    libyaml.x86_64          0.1.4-1.el5.rf  @rpmforge                               
    libyaml-devel.x86_64    0.1.4-1.el5.rf  @rpmforge  
    

    libyaml-(STABLE)가 핵심이다.

    % tar zxvf ruby-1.9.3-p448.tar.gz
    % cd ruby-1.9.3-p448
    % ./configure -prefix=$HOME/ruby-1.9.3-p448
    % make ; make install
    % cd $HOME; ln -s ./ruby-1.9.3-p448 ruby
    

    경로 및 소스 업데이트의 .cshrc

    % echo $PATH
    /home/francis/ruby/bin:/usr/sbin:/home/francis/bin:/home/francis/jdk1.7.0_25/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin
    
    % which ruby
    /home/francis/ruby/bin/ruby
    
    % gem update --system
    

    의 .cshrc 및 소스에 GEM_HOME 설정

    % echo $GEM_HOME
    % /home/francis/ruby/lib/ruby/gems
    
    % gem install mysql2 pg ruby-debug-ide rails capistrano capistrano-ext passenger
    
  22. ==============================

    22.당신이 소스에서 루비를 구축하는 경우는 빌드 루비로 구성 / 메이크업을하기 전에, 당신이 필요합니다 (I 페도라 20에 1.9.3을 내장) :

    당신이 소스에서 루비를 구축하는 경우는 빌드 루비로 구성 / 메이크업을하기 전에, 당신이 필요합니다 (I 페도라 20에 1.9.3을 내장) :

    yum install libyaml-devel
    

    (냠에 추가 libyaml를 설치합니다.) 위의 rpmforge를 사용 프란시스의 대답 유사합니다.

  23. ==============================

    23.이 오류를 가지고 내가 루비의 다른 버전은 내가 더 이상 사용하지 않는 것을 많은 보석과 함께 사제와 함께 설치했다 발견했다. 따라서이 같은 전체 정리했다 :

    이 오류를 가지고 내가 루비의 다른 버전은 내가 더 이상 사용하지 않는 것을 많은 보석과 함께 사제와 함께 설치했다 발견했다. 따라서이 같은 전체 정리했다 :

    $ brew remove --force ruby # remove all versions installed
    $ sudo rm -rf /usr/local/lib/ruby # remove all gems and leftover files
    $ brew install ruby
    $ gem install bundler
    $ bundle install
    

    당신이 Gemfile을 사용하지 않는 경우, 당신이 다시 설치하는 보석 알고 있어야합니다.

  24. ==============================

    24.내 경우에는 모든 나는 할되었다 필요

    내 경우에는 모든 나는 할되었다 필요

    rm -rf /usr/local/lib/ruby/gems/2.4.0/gems/psych-2.2.4
    rm -rf /usr/local/lib/ruby/gems/2.4.0/extensions/x86_64-darwin-16/2.4.0/psych-2.2.4
    

    이제 FWIW은, 보석 목록에 포함

    psych (2.2.4, default: 2.2.2)
    
  25. ==============================

    25.스노우 레오파드 (Snow Leopard)에서 Catharz로 솔루션은 나를 위해 작동하지 않았다. 이 솔루션은, 그러나,했다 :

    스노우 레오파드 (Snow Leopard)에서 Catharz로 솔루션은 나를 위해 작동하지 않았다. 이 솔루션은, 그러나,했다 :

    brew install libyaml
    rvm get head
    rvm reinstall 1.9.3  --with-gcc=clang
    

    합니다 (RVM의 재설치 나에게 연타 "--with-libyaml"옵션을 가지고 있지만 관계없이 오류 메시지를 해결하지에 대한 경고를 주었다.)

  26. ==============================

    26.이것은 우분투 10.04에 적어도 나를 위해 일

    이것은 우분투 10.04에 적어도 나를 위해 일

    $ sudo는 apt-get을 설치 libtool이

    $ RVM은 1.9.3을 설치

  27. ==============================

    27.Solaris의 경우 :

    Solaris의 경우 :

    # sudo crle -64 -l /usr/local/lib
    

    공유 라이브러리 검색 경로에 / usr / 지방 / lib 디렉토리를 추가합니다 (남자 인 crle 참조)

  28. ==============================

    28.내가 스노우 레오파드 10.6.8 64 비트 비트 (32)로 전환 할 때, 나는 32 비트에서 실행 루비 (사용 RVM)를 다시 설치하고 같은 문제를 만났다. 나는 단지 '정리'하기 전에 RVM에 의해 캐시 문제가 해결하는 모든 일이 그래서. 이 팁 캔 도움말 사람을 바랍니다.

    내가 스노우 레오파드 10.6.8 64 비트 비트 (32)로 전환 할 때, 나는 32 비트에서 실행 루비 (사용 RVM)를 다시 설치하고 같은 문제를 만났다. 나는 단지 '정리'하기 전에 RVM에 의해 캐시 문제가 해결하는 모든 일이 그래서. 이 팁 캔 도움말 사람을 바랍니다.

    여전히이 문제를 충족하는 경우 BTW, 나는 당신이 시도 할 수 있다고 생각합니다 :

  29. ==============================

    29.산 사자와 RVM 버전과 사람들을 위해> = 1.18.x

    산 사자와 RVM 버전과 사람들을 위해> = 1.18.x

    루비 버전을 설치할 때 플래그로 사용되는이 새로운 도구 RVM 제공됩니다. 그것은 autolibs를 불렀다.

    나는 다음을 수행하여이 정신 문제를 제거있어 :

    RVM 재설치 루비 1.9.3-p392 --autolibs = 3

    수행하여 전에 도움말 텍스트를 읽기 :

    RVM 도움말 autolibs

    멋있는.

  30. ==============================

    30.나는 많은, 많은 시간 동안 루비 2.0.0를 설치 RVM과 같은 장애로 고생. 나는 libyaml를 설치하는 모든 다른 방법을 시도했다; wget과 소스, 냠 및 RVM. 또한 유사한 스레드에 나와있는 다른 방법을 모두 시도했다. 나는 모든 다른 방법을 시도하기 때문에, 여러 개의 설치 및 libyaml의 위치를했다.

    나는 많은, 많은 시간 동안 루비 2.0.0를 설치 RVM과 같은 장애로 고생. 나는 libyaml를 설치하는 모든 다른 방법을 시도했다; wget과 소스, 냠 및 RVM. 또한 유사한 스레드에 나와있는 다른 방법을 모두 시도했다. 나는 모든 다른 방법을 시도하기 때문에, 여러 개의 설치 및 libyaml의 위치를했다.

    RVM은 ~ / .rvm에 필요한 종속성을 설치 완벽하게 할 수있다. 간단하게 저를 위해이 문제를 해결 설치를 비 RVM에서 libyaml 파일을 제거 :

    sudo rm /usr/local/lib/libyaml*.*
    
    rvm reinstall ruby-2.0.0-p0
    

    공장!

  31. from https://stackoverflow.com/questions/9434002/how-to-solve-ruby-installation-is-missing-psych-error by cc-by-sa and MIT license