2012-02-24 56 views
8

tôi muốn cài đặt ruby ​​trên Linux Mint của tôi 12.RVM cài đặt: cài đặt ruby ​​lỗi

tôi sau this tutorialthis one.

khi tôi chạy rvm install 1.9.3 tôi thấy lỗi này:

Installing Ruby from source to: /usr/share/ruby-rvm/rubies/ruby-1.9.3, this may take a while depending on your cpu(s)... 

ruby-1.9.3 - #fetching 
ruby-1.9.3 - #extracting ruby-1.9.3- to /usr/share/ruby-rvm/src/ruby-1.9.3 
ERROR: Error running 'bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_4428', please read /usr/share/ruby-rvm/log/ruby-1.9.3/extract.log 
ERROR: There has been an error while trying to extract the source. 
Halting the installation. 
ERROR: There has been an error fetching the ruby interpreter. Halting the installation. 

Làm thế nào để sửa chữa nó?

EDIT: @ ka8725

bunzip2 được cài đặt. Khi tôi chạy cat /usr/share/ruby-rvm/log/ruby-1.9.3/extract.log

tôi thấy

[2012-02-25 01:11:55] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_32604 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 
[2012-02-25 01:12:16] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_32740 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 
[2012-02-25 01:13:50] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_383 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 
[2012-02-25 01:13:52] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_474 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 
[2012-02-25 01:13:58] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_568 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 
[2012-02-25 01:18:57] bunzip2 < '/usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2' | tar xf - -C /usr/share/ruby-rvm/tmp/rvm_src_4428 
bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 

KHÁC EDIT @EVERYONE :)

đây whats xảy ra guys:

rvm requirements đầu ra unrecognized error etc. Tuy nhiên rvm notes sẽ chỉ cho tôi những thứ cần thiết mà tôi nên cài đặt. NHƯNG khi tôi cài đặt những thứ này, rvm sẽ bị xóa và vì vậy tôi phải cài đặt lại lol !! :) một lần, hai lần, mười lần, mãi mãi :) này gì sẽ xảy ra

đây là những gói mà tôi cần

sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev 
+1

chúng ta đang nói về một 'RVM tươi 'cài đặt? –

+0

@ s.m. có, tôi đã không có rvm trước khi – Lynob

+0

Bạn đang cố gắng để cài đặt như là người chủ, bởi cơ hội nào? Ngoài ra, hãy thử chạy 'yêu cầu rvm' để đảm bảo bạn có tất cả các phụ thuộc tại chỗ. –

Trả lời

14

Gỡ bỏ và cài đặt lại rvm với

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer) 

Đối với hậu thế, tôi sẽ thêm rằng một phần của lỗi mà nói

Installing Ruby from source to: /usr/share/... 

là những gì tôi đã suy nghĩ về một cài đặt bị hỏng của RVM như tôi đã nói, thường hoàn toàn nằm trong thư mục ~/.rvm.

0

cat /usr/share/ruby-rvm/log/ruby-1.9.3/extract.log

Dường như với tôi bạn không có cài đặt bunzip2 . Bạn nên cài đặt nó

+0

xin vui lòng đọc chỉnh sửa của tôi – Lynob

1

bạn đã thử câu trả lời này Installed Ruby 1.9.3 with RVM but command line doesn't show ruby -v chưa?

đường nối bạn sử dụng "apt-get rvm bị hỏng" đảm bảo bạn làm theo câu trả lời ở trên.

+0

xin vui lòng đọc chỉnh sửa của tôi – Lynob

+0

/usr/share/ruby-rvm - đây là đường dẫn cài đặt không chuẩn cho RVM, nó được tạo ra bởi Ubuntu, và những gì trong đường dẫn này bị hỏng, không chỉ những vấn đề bạn có - nhưng nhiều hơn nữa, đó là lý do tại sao tôi khuyên bạn nên làm sạch nó và bắt đầu tươi – mpapis

+0

i theo câu trả lời của bạn vì vậy tôi nên đã xóa môi trường của tôi và vẫn phải sử dụng 'usr/share/ruby-rvm' vì vậy nếu tôi có vấn đề khác như bạn nói, sau đó vấn đề của tôi không thực sự được giải quyết lol !!! – Lynob

2

Issue giải quyết, dưới đây là cách trong trường hợp bạn muốn biết:

Như s.m. nói, tôi gỡ bỏ tất cả mọi thứ, sau đó tôi mở một phiên terminal như một người dùng bình thường và chạy:

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer) 

sau đó tôi chạy source /home/my-desktop-username/.rvm/scripts/rvmnhư một người dùng bình thường không phải root

sau đó tôi chạy rvm requirementsnhư một người dùng bình thường. Sau đó, tôi sao chép các yêu cầu và đóng phiên giao dịch, mở một gốc phiên và cài đặt các yêu cầu sử dụng sudo

Sau đó, tôi đóng phiên và mở một người sử dụng phiên bình thường và chạy rvm install ruby-1.9.3-p125 nếu bạn chạy lệnh này như root, nó sẽ nói rằng rvm không được cài đặt và sẽ đề nghị bạn cài đặt nó bằng cách sử dụng sudo apt-get install rvmĐừng làm điều đó!

Vì vậy, về cơ bản tôi có hai vấn đề, các hướng dẫn mà tôi đi theo không nói rằng tôi nên chạy

source /home/my-desktop-username/.rvm/scripts/rvm và không nói rằng tôi không nên chạy rvm như gốc, sm nói tôi đó. Nhờ tất cả mọi người, đặc biệt là s.m

Đừng tin tưởng các blogger, người dùng hoặc diễn đàn Youtube. CHỈ TRUST STACKOVERFLOW NGƯỜI SỬ DỤNG!

1

Tôi gặp vấn đề tương tự với bunzip2.

Đuôi vào ~/.rvm/log/ruby-1.9.3-p125/extract.log nói:

bunzip2: (stdin) is not a bzip2 file. 
tar: This does not look like a tar archive 
tar: Exiting with failure status due to previous errors 

Nó chỉ ra rằng tập tin tải về là trang web HTML của trang web thay vì RVM bản thân kho lưu trữ.

Vì vậy, nếu như tôi tất cả các giải pháp trước đó đã không được giải quyết. Kiểm tra loại tệp lưu trữ của bạn:

$ file ruby-1.9.3-p125.tar.bz2 
ruby-1.9.3-p125.tar.bz2: HTML document, UTF-8 Unicode text, with very long lines 

Nếu bạn nhận được thông tin như thế này, chỉ cần xóa lưu trữ và thử cài đặt lại.

6

tôi giải quyết vấn đề của tôi chỉ đơn giản là thực hiện:

rvm get head rvm reloadrvm install 1.9.3

5

Làm một bản cập nhật RVM như đề xuất tại một trong những ý kiến ​​đã cho tôi một số lỗi tốt về làm thế nào để khắc phục vấn đề. Tôi đã tẩy sạch apt-get ruby-rvm như gợi ý trong các lỗi và cài đặt với curl. Làm việc như người ở. Nhìn vào tên tập tin, phiên bản apt-get của rvm có vẻ như phần cuối của phiên bản bị thiếu vì một lý do nào đó. Thay vì ruby-1.9.3-.tar.bz2, nó phải là ruby-1.9.3-p327.tar.bz2 hoặc cái gì đó có hiệu lực.

Đây là những gì tôi đã làm và những gì đã được đề xuất bởi các lỗi sau khi cập nhật RVM:

sudo apt-get --purge remove ruby-rvm 
    sudo rm -rf /usr/share/ruby-rvm /etc/rvmrc /etc/profile.d/rvm.sh 

    open new terminal and validate environment is clean from old rvm settings: 

    env | GREP_OPTIONS= \grep rvm 

install RVM: 

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

fix some more screwed up stuff from apt-get ruby-gem 

    make ~/.bash_profile look like this(it loads rvm as a function in bash): 

     [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 

update RVM: 

    rvm update 
    rvm reload 

install ruby 

    rvm install 1.9.3 
    rvm use 1.9.3 --default 

install current rubygems 

    rvm rubygems current 

install rails 

    gem install rails 

Xong!

1

Nếu bạn cat /usr/share/ruby-rvm/archives/ruby-1.9.3-.tar.bz2 bạn sẽ thấy

<html> <head><title>404 Not Found</title></head> <body bgcolor="white"> <center><h1>404 Not Found</h1></center> <hr><center>nginx/1.2.1</center> </body>

Vì vậy, RVM không biết nơi để tìm ruby-1.9.3 (có vẻ như con đường được đọc sai xung quanh '3-.tar')

Và, 1.9.1 "khả năng tương thích" với 1.9.3 là một trò đùa (không vui) trong Ubuntu.

Việc sửa chữa đối với tôi là:

rvm package install openssl

rvm install ruby-1.9.2 --with-openssl-dir=/usr/share/ruby-rvm/usr

Như 1.9.2 xảy ra phù hợp tất cả các phụ thuộc đá quý của tôi (ví dụ nokogiri)

Các vấn đề liên quan