2013-03-19 42 views
6

Tôi cảm thấy mình giống như một tên ngốc nấu ăn, nhưng tôi đã vất vả cả ngày và không có nơi nào.Rubygems trên OSX thiếu

Tôi đã khởi động lại vài lần để cài đặt đầy đủ Ruby trên môi trường OSX, RVM, Brew, Ruby: và mỗi lần tôi cài đặt Ruby, nó sẽ được cài đặt Ruby.

Lý do tôi phải bắt đầu lại là RVM sẽ không cập nhật trong Jewellerybox sau lần cài đặt thành công đầu tiên của tôi (sử dụng một gói RubyInstaller tất cả trong một) vì vậy tôi không thể quản lý đá quý của mình - một vấn đề gây ra bởi Ruby ban đầu cài đặt trên hệ thống sống trong/usr/local và không theo thư mục của riêng tôi. Để khắc phục điều này, tôi đã gỡ cài đặt tất cả nội dung của Ruby và bắt đầu lại.

Tất cả đều ok cho đến khi trình biên dịch ruby ​​bắt đầu gacking trên phần cài đặt rubygems khi cài đặt ruby ​​2.0.0. Kiểm tra các tập tin hệ thống OSX trong usr/bin Tôi thấy rằng rubygems không có ở đó (nó phải có mặt mặc định trên OSX). Bất kỳ ý tưởng? (Lưu ý rằng XCode được cập nhật và có các công cụ dòng lệnh cài đặt)

Lần gửi cuối cùng là:

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

. . . bắn những viên đạn được lỗi sau:

[2013-03-19 23:21:50] /Users/matthew.evans/.rvm/rubies/ruby-2.0.0-p0/bin/ruby 
Exception `LoadError' at /Users/matthew.evans/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/rubygems.rb:1073 - cannot load such file -- rubygems/defaults/operating_system 
Exception `LoadError' at /Users/matthew.evans/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/rubygems.rb:1082 - cannot load such file -- rubygems/defaults/ruby 
mkdir -p /Users/matthew.evans/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/site_ruby/2.0.0 

...

install -c -m 0755 /var/folders/nq/wkj89k854tl0w97n68qdn820pzk_51/T/gem.84634 /Users/matthew.evans/.rvm/rubies/ruby-2.0.0-p0/bin/gem 
rm /var/folders/nq/wkj89k854tl0w97n68qdn820pzk_51/T/gem.84634 
ERROR: While executing gem ... (NoMethodError) 
    undefined method `fu_stream_blksize' for #<Gem::Commands::SetupCommand:0x007ffd0e054818> 
Installing RubyGems 
Installing gem executable 
+0

Hãy thử như sau: 'echo $ {LANG: -empty}' sau đó 'xuất khẩu LANG = en_US.utf-8'. Sau đó, thử lại. – fmendez

+0

@fmendez: Tại sao ?? – AGS

+0

@AGS Vì một vấn đề tương tự được báo cáo tại đây: https://github.com/wayneeseguin/rvm/issues/1689 và được nhân đôi ở đây: https://github.com/rubygems/rubygems/issues/516 – fmendez

Trả lời

1

Tôi tin rằng vấn đề này là nơi RVM đặt phụ thuộc của bạn - toàn cầu vs thư mục người dùng của bạn. Từ một cuốn sách gọi là "Agile phát triển với đường ray":

First, you’ll need to make sure you have Xcode 3 or later installed...

$ xcodebuild -version 

If you have Xcode version 3 installed, you’ll need to install the Git version control system separately. Verify your installation by running the following command:

$ git --version 

Next, install RVM itself:

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

Exit your command window or Terminal application and open a new one. This causes your .bash_login to be reloaded. Execute the following command, which provides additional installation instructions tailored to your specific operating system:

$ rvm requirements 

Look for the line that tells you how to install the necessary OS dependencies for Ruby (MRI). Once you complete those instructions, you can proceed to install the Ruby interpreter itself:

$ rvm install 2.0.0 

The preceding step will take a while as it downloads, configures, and compiles the necessary executables. Once it completes, use that environment, and install rails:

$ rvm use 2.0.0 
$ gem install rails --version 4.0.0.beta1 --no-ri --no-rdoc 

With the exception of the rvm use statement, each of the above instructions need only be done once. The rvm use statement needs to be repeated each time you open a shell window. The use keyword is optional, so you can abbreviate this to rvm 2.0.0. You can also choose to make it the default Ruby interpreter for new terminal sessions with the following command:

$ rvm --default 2.0.0 

You can verify successful installation using the following command:

$ rails -v 

Nếu bạn gặp khó khăn, hãy thử những gợi ý được liệt kê dưới Khắc phục sự cố của bạn cài đặt tiêu đề trên trang web RVM.

Hy vọng điều đó sẽ xảy ra với bạn!

+4

Tôi tìm thấy tôi đã bỏ lỡ một số yêu cầu rvm. Khi đã được sắp xếp, 'rvm install 2.0.0' sẽ trả về lỗi tương tự. nhưng chạy 'rvm rubygems latest' sau đó sẽ cài đặt rubygems thành công. – lulalala

3

Tôi đã gặp lỗi chính xác khi cài đặt ruby ​​v2 trong rvm hôm nay. Tôi đã ở trong một tài khoản người dùng trên Ubuntu, những người cần sử dụng 'sudo' - và nhập mật khẩu tài khoản của tôi cho sudo - để cài đặt các phụ thuộc hệ điều hành.

Câu hỏi của bạn đề cập đến việc chạy rvm requirements đến cài đặt phụ thuộc phụ thuộc. Điều đó có vẻ là hành vi mới trong rvm, như của v1.19. Nó dường như cài đặt một loạt các phụ thuộc tốt.Nhưng sau đó cài đặt ruby ​​bị đánh bom.

Trong các phiên bản rvm cũ hơn, nhập rvm requirements sẽ chỉ danh sách phụ thuộc cho rvm và ruby, như trong câu trả lời Archonic's.

Tôi gõ rvm implode và sau đó bắt đầu trên với:

\curl -L https://get.rvm.io | bash -s 1.18.21 
source /home/deploy/.rvm/scripts/rvm 
rvm requirements 

Vào thời điểm đó tôi có thể cài đặt các thư viện/công cụ mà RVM nói rằng tôi cần thiết cho RVM và ruby, và sau đó rvm install ruby-2.0.0-p0 thành công.

+1

Để tham khảo, các "MỚI" thư viện bỏ lỡ bởi 'RVM requirements' trong RVM 1.19.0 là: dpkg-dev build-essential g ++ g ++ - 4,6 libapr1 libaprutil1 libdb4.8 libdpkg-perl libneon27-gnutls libstdC++ 6- 4.6-dev libsvn1 subversion –

1

này đã làm việc cho tôi:

rvm get head 
rvm requirements 
rvm install ruby-2.0