Cài đặt Ruby 2.0.0 qua RVM: lỗi xung quanh openssl


8

Sử dụng: Mountain Lion 10.8.2,RVM 1.18.15

Có vấn đề với, rõ ràng , opensslkhi cố gắng cài đặt Ruby 2.0.0 qua RVM:

$ rvm install 2.0.0
...
Extracting openssl to /Users/meltemi/.rvm/src/openssl-1.0.1c
Configuring openssl in /Users/meltemi/.rvm/src/openssl-1.0.1c.
Error running './Configure darwin64-x86_64-cc -I/Users/meltemi/.rvm/usr/include -L/Users/meltemi/.rvm/usr/lib zlib no-asm no-krb5 --prefix=/Users/meltemi/.rvm/usr no-shared ', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/openssl/configure.log
Compiling openssl in /Users/meltemi/.rvm/src/openssl-1.0.1c.
Error running 'make', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/openssl/make.log

Vì vậy, tôi brew install opensslcập nhật openssl để 1.0.1ehy vọng điều đó có ích nhưng vẫn còn nhiều lỗi hơn (xem "đầu ra dài").

Vì vậy, hãy tìm hiểu về Stack Exchange và theo dõi một cách lỏng lẻo đề xuất về bài đăng này được đề xuất rvm get head(trái ngược với tiêu biểu của tôi rvm get stable) và nhận thấy:

$ rvm get head
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
...
100 1620k  100 1620k    0     0   275k      0  0:00:05  0:00:05 --:--:--  479k

Upgrading the RVM installation in /Users/meltemi/.rvm/
    RVM PATH line found in /Users/meltemi/.bashrc /Users/meltemi/.zshrc.
    RVM sourcing line found in /Users/meltemi/.bash_profile /Users/meltemi/.zshrc.
    Installing rvm gem in 1 gemsets ERROR:  Loading command: install (LoadError)
    cannot load such file -- openssl
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass

Thú vị một chút cannot load such file -- openssl.

Đưa cái gì?

đầu ra dài:

sau khi cập nhật openssl lên 1.0.1.e qua homebrew đã thử lại nhưng vì bất kỳ lý do gì, 1.0.1c vẫn đang được tham chiếu:

$ rvm reinstall 2.0.0 --with-openssl-dir=/usr/local          
Removing /Users/meltemi/.rvm/src/ruby-2.0.0-p0...
Removing /Users/meltemi/.rvm/rubies/ruby-2.0.0-p0...
Fetching openssl-1.0.1c.tar.gz to /Users/meltemi/.rvm/archives
Extracting openssl to /Users/meltemi/.rvm/src/openssl-1.0.1c
Configuring openssl in /Users/meltemi/.rvm/src/openssl-1.0.1c.
Error running './Configure darwin64-x86_64-cc -I/Users/meltemi/.rvm/usr/include -L/Users/meltemi/.rvm/usr/lib zlib no-asm no-krb5 --prefix=/Users/meltemi/.rvm/usr --with-openssl-dir=/usr/local no-shared ', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/openssl/configure.log
Compiling openssl in /Users/meltemi/.rvm/src/openssl-1.0.1c.
Error running 'make', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/openssl/make.log

Please note that it's required to reinstall all rubies:

    rvm reinstall all --force

Updating openssl certificates
Error running 'update_openssl_certs', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/openssl.certs.log
Installing Ruby from source to: /Users/meltemi/.rvm/rubies/ruby-2.0.0-p0, this may take a while depending on your cpu(s)...
ruby-2.0.0-p0 - #downloading ruby-2.0.0-p0, this may take a while depending on your connection...
ruby-2.0.0-p0 - #extracting ruby-2.0.0-p0 to /Users/meltemi/.rvm/src/ruby-2.0.0-p0
ruby-2.0.0-p0 - #extracted to /Users/meltemi/.rvm/src/ruby-2.0.0-p0
ruby-2.0.0-p0 - #configuring
ruby-2.0.0-p0 - #compiling
ruby-2.0.0-p0 - #installing 
Removing old Rubygems files...
Installing rubygems-2.0.0 for ruby-2.0.0-p0 ...
Error running 'env GEM_PATH=/Users/meltemi/.rvm/gems/ruby-2.0.0-p0:/Users/meltemi/.rvm/gems/ruby-2.0.0-p0@global:/Users/meltemi/.rvm/gems/ruby-2.0.0-p0:/Users/meltemi/.rvm/gems/ruby-2.0.0-p0@global GEM_HOME=/Users/meltemi/.rvm/gems/ruby-2.0.0-p0 /Users/meltemi/.rvm/rubies/ruby-2.0.0-p0/bin/ruby /Users/meltemi/.rvm/src/rubygems-2.0.0/setup.rb', please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/rubygems.install.log
Installation of rubygems did not complete successfully.
Saving wrappers to '/Users/meltemi/.rvm/bin'.
ruby-2.0.0-p0 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-2.0.0-p0 - #importing default gemsets, this may take time ...
Install of ruby-2.0.0-p0 - #complete 
Making gemset ruby-2.0.0-p0 pristine.
Error running '' under ,
please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/gemset.pristine.log
Making gemset ruby-2.0.0-p0@global pristine.
Error running '' under ,
please read /Users/meltemi/.rvm/log/ruby-2.0.0-p0/gemset.pristine.log

Tôi gặp vấn đề tương tự sau khi nâng cấp lên OSX Mavericks.
Hengjie

Câu trả lời:


16

Có cùng một vấn đề. Hãy thử như sau:

$ rvm remove 2.0.0 # get rid of unsuccessful installation
$ rvm get head --autolibs=3 # get the latest RVM and build required libs
$ rvm requirements # just in case, install all other required stuff
$ rvm install ruby-2.0.0
$ rvm --default use ruby-2.0.0

Chính xác thì --autolibs=3cờ làm gì? Tôi không thể tìm thấy bất kỳ tài liệu nào về nó Ngày
mai

FWIW- Tôi đã làm theo hướng dẫn của bạn, loại: remove 2.0.0và sau đó rvm get head(bỏ qua --autolibs=3bit). yêu cầu kiểm tra. ĐỒNG Ý. sau đó rvm install ruby-2.0.0. và ... không có vấn đề gì! Nó đã làm việc!
Meltemi

github.com/wayneeseguin/rvm/issues/1623 Có một số thông tin trên autolibscờ, theo như tôi hiểu, nó cho RVM biết cách xử lý các lib yêu cầu bổ sung.
Artem Pakk

Tài liệu cho autolibs có thể được tìm thấy bằng cách chạy cmd sau: "rvm help autolibs" từ thiết bị đầu cuối
Jeremy Cade

Theo OSX 10.8: cũng vậysudo brew install openssl
idonnie

0

Vì vậy, điều này làm việc cho tôi:

rvm pkg install openssl
rvm reinstall all --force

Tôi cũng đã có rvm autolibs rvm_pkgđể hỗ trợ đọc.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.