Cách cài đặt Ruby 2.1.4 trên Ubuntu 14.04


119

Tôi không biết cách cài đặt Ruby mới nhất trên Ubuntu.

Đầu tiên, tôi cài đặt Ruby 1.9.3 mặc định, sử dụng

sudo apt-get install ruby

Sau đó, tôi đã cố gắng cài đặt phiên bản 2.0 bằng

sudo apt-get install ruby2.0

Phiên bản Ruby của tôi vẫn là "ruby 1.9.3p484 (2013-11-22 sửa đổi 43786) [x86_64-linux])"

Tôi nên làm gì?


câu trả lời này là rất hữu ích cho việc cài đặt người quản lý phiên bản ruby, cho phép bạn để kiểm tra và sử dụng bất kỳ phiên bản nào bạn muốn bất cứ khi nào bạn muốn trong môi trường gia đình của bạn mà không cầnsudo
Jeff Puckett

Câu trả lời:


130

Trước hết, hãy cài đặt các thư viện tiên quyết:

sudo apt-get update
sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Sau đó cài đặt rbenv, được sử dụng để cài đặt Ruby:

cd
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL

rbenv install 2.3.1
rbenv global 2.3.1
ruby -v

Sau đó (tùy chọn) yêu cầu Rubygems không cài đặt tài liệu cục bộ:

echo "gem: --no-ri --no-rdoc" > ~/.gemrc

Tín dụng: https://gorails.com/setup/ubuntu/14.10

Cảnh báo!!! Có vấn đề với Gnome-Shell. Xem bình luận bên dưới.


Nó đáng chú ý là người dùng có thể cần phải chạy lệnh sau đây là tốt, trước khi cài đặt ruby 2.2.0 sudo apt-get install libffi-dev
ThaDick

Cảnh báo! Đã thêm những dòng đó vào tệp .bash * của bạn có thể khiến Gnome-Shell không tải. Tôi không thể đăng nhập cho đến khi tôi xóa những dòng đó.
Cerin

Thnaks, @Cerin. Đã thêm cảnh báo vào bài đăng. Bạn đã quản lý vấn đề này? Làm thế nào để bạn thêm một đường dẫn?
dubadub

4
Không, tôi chưa bao giờ thực sự giải quyết chuyện này. Thay vào đó, tôi đã thử cài đặt rvm, nhưng rõ ràng trình cài đặt (từ get.rvm.io ) phát hiện ra Ubuntu và từ chối cài đặt theo nghĩa đen, chuyển hướng đến một câu hỏi SO, từ đó đề xuất chạy cùng một trình cài đặt ... Vì vậy, thay vào đó tôi quyết định gỡ cài đặt hoàn toàn Ruby từ hệ thống của tôi và chuyển tất cả các công cụ Ruby của tôi sang các công cụ tương đương của Python.
Cerin

Vấn đề gnome-shell có liên quan đến cách biến PATH đang được sửa đổi không? Tôi luôn đọc rằng các đường dẫn mới nên được thêm vào PATH, không được thêm vào trước. Tôi cũng đã đọc rằng các biến môi trường nên được thêm vào ~ / .profile hoặc ~ / .bash_profile thay vì ~ / .bashrc.
japhyr

206

Có một PPA với các phiên bản cập nhật của Ruby 2.x cho Ubuntu 12.04+:

$ sudo apt-add-repository ppa:brightbox/ruby-ng
$ sudo apt-get update
$ sudo apt-get install ruby2.4

$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux-gnu]

Làm thế nào để chọn rubyđược ruby2.3mặc dù?
njzk2

1
@ njzk2 Hãy thử sudo update-alternatives --config rubyvà làm theo hướng dẫn ở đó. Trên bản cài đặt mới không có gói ruby ​​Ubuntu chính thức, gói PPA đã định cấu hình rubybí danh ruby2.3tự động cho tôi.
Vlad Frolov,

Mặc dù cách này dễ thực hiện hơn nhiều, nhưng sử dụng PPA không thực sự là cách 'tốt nhất', PPA có thể biến mất, thường không được tổng hợp cẩn thận như các kênh chính thức, v.v. PPA là một kho lưu trữ do một người thiết lập và tự điều hành. Chỉ cần cẩn thận ở ngoài đó.
John Hunt

38

Tốt nhất là cài đặt nó bằng rvm (trình quản lý phiên bản ruby).
Chạy các lệnh sau trong một thiết bị đầu cuối:

sudo apt-get update
sudo apt-get install build-essential make curl
\curl -L https://get.rvm.io | bash -s stable
source ~/.bash_profile
rvm install ruby-2.1.4

Sau đó, kiểm tra các phiên bản ruby ​​được cài đặt và sử dụng:

rvm list
rvm use --default ruby-2.1.4

Ngoài ra, bạn có thể thêm trực tiếp đường dẫn bin ruby ​​vào biến PATH. Ruby được cài đặt trong

$HOME/.rvm/rubies export PATH=$PATH:$HOME/.rvm/rubies/ruby-2.1.4/bin

12
Đưa mã tùy ý qua mạng là một ý tưởng tồi. Đây là "Bức tường xấu hổ" hiển thị các trang web vi phạm: curlpipesh.tumblr.com
labyrinth

1
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
Brett

JECompton: Tốt hơn nên nói chuyện với những người ở rvm về điều đó, vì đây là phương pháp cài đặt rvm chuẩn.
Lonny Eachus, 14/07/17

6

Sử dụng RVM (Ruby Version Manager) để cài đặt và quản lý bất kỳ phiên bản nào của Ruby. Bạn có thể cài đặt nhiều phiên bản Ruby trên máy và có thể dễ dàng chọn phiên bản mình muốn.

Để cài đặt loại RVM vào thiết bị đầu cuối:

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

Và để nó hoạt động. Sau đó, bạn sẽ có RVM cùng với Ruby được cài đặt.

Nguồn: Trang RVM


1
Để cài đặt RVM, hãy làm theo hướng dẫn trên trang cài đặt của họ . Có nhiều điều để sử dụng RVM hơn là chạy cURL và trang cài đặt sẽ thực hiện điều đó. Nó nên được đọc trước khi cài đặt để làm quen với những gì nó sẽ làm, bao gồm cả các bước khắc phục sự cố.
the Tin Man

@theTinMan Tất nhiên tôi hoàn toàn đồng ý với bạn. Đó là lý do tại sao tôi đã thêm trang của họ làm nguồn để tác giả của chủ đề này có thể đọc thêm về nó.
Bartosz Łęcki

Trang chủ của RVM là một chuyện, nhưng hầu hết các câu hỏi về RVM mà chúng tôi đặt ra ở đây có thể được giải quyết ngay lập tức nếu mọi người đã đọc toàn bộ trang cài đặt.
the Tin Man

1
Đưa mã tùy ý qua mạng là một ý tưởng tồi. Đây là "Bức tường xấu hổ" hiển thị các trang web vi phạm: curlpipesh.tumblr.com
labyrinth

3

cập nhật ubuntu:

 sudo apt-get update
 sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Cài đặt rvm, quản lý các phiên bản ruby:

để cài đặt rvm, hãy sử dụng lệnh sau.

 \curl -sSL https://get.rvm.io | bash -s stable
 source ~/.bash_profile
 rvm install ruby-2.1.4

Kiểm tra các phiên bản ruby ​​được cài đặt và sử dụng:

rvm list
rvm use --default ruby-2.1.4
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.