ติดตั้ง ruby ​​2.2.3 ผ่าน apt


16

จะติดตั้ง Ruby 2.2.3 ผ่าน apt บน Ubuntu Wily ได้อย่างไร? ฉันลองsudo apt-get install ruby2.2-devแล้วsudo apt-get install ruby2.2(อะไรคือความแตกต่าง btw) และคำสั่งทั้งคู่ดูเหมือนจะติดตั้งแล้วค่อนข้างเยอะ อย่างไรก็ตามไม่มีการปฏิบัติการทับทิมในภายหลัง


คุณติดตั้งอย่างแน่นอนต้องการติดตั้งทับทิม 2.2.3 ผ่านฉลาด? แพ็คเกจ * -dev มีส่วนหัวและไฟล์ที่ * อาจต้องทำงานอย่างถูกต้อง ตรวจสอบอย่างเป็นทางการruby-lang.orgมันมีข้อมูลที่คุณจำเป็นต้องติดตั้งอย่างถูกต้องทับทิม 2.2.3
enzo

โปรดอ้างอิงว่ามันมีประโยชน์ [ gorails.com/setup/ubuntu/15.10]
Ravan

1
@ maetsoh ทำไมฉันต้องติดตั้งแพกเกจทุกอันด้วย apt ยกเว้น ruby? ฉันชอบผู้จัดการแพ็คเกจ
Michiel de Mare

Ruby เป็นส่วนหนึ่งของกลไก "ทางเลือก" บน Ubuntu หรือไม่? หากไม่เป็นเช่นนั้นอาจเป็นการดีที่จะใช้rbenvเพื่อจัดการการติดตั้ง Ruby โดยเฉพาะอย่างยิ่งถ้าคุณต้องการใช้ Ruby เวอร์ชันต่าง ๆ ในเวลาเดียวกัน การเชื่อมโยงแบบนุ่มนวลสามารถสร้างความน่าเบื่อได้เล็กน้อยเมื่อทำการพัฒนา Rails และอื่น ๆ

ฉันใช้ rbenv ในพื้นที่เพื่อเปลี่ยนเวอร์ชั่นดังนั้นมันจึงคุ้มค่ากับความยุ่งยาก แต่ในการผลิตฉันต้องใช้ 1 ruby ​​version เท่านั้นจากนั้นฉันชอบผู้จัดการแพ็คเกจมาตรฐาน ฉันจะอ่านเกี่ยวกับกลไก "ทางเลือก" ( manpages.ubuntu.com/manpages/vivid/en/man8/… )
Michiel de Mare

คำตอบ:


7

apt-get install ruby2.2จะทำให้คุณเรียกใช้งานทับทิมได้ - มันเรียกว่า ruby2.2 อัญมณีและ irb เหมือนกัน (กล่าวคือgem2.2 install bundlerใช้ได้ผลirb2.2จะให้พรอมต์ irb แก่คุณ)

นี่เป็นเรื่องปกติใน Ubuntu และระบบทางเลือกโดยทั่วไปหมายความว่าคุณไม่ต้องสนใจมัน แต่ด้วยเหตุผลใดก็ตามทับทิมก็ไม่ได้ถูกจัดการโดยทางเลือกใน Ubuntu แต่เราสามารถทำให้มัน:

sudo update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby2.2 400 \
 --slave /usr/bin/rake rake /usr/bin/rake2.2 \
 --slave /usr/bin/ri ri /usr/bin/ri2.2 \
 --slave /usr/bin/rdoc rdoc /usr/bin/rdoc2.2 \
 --slave /usr/bin/gem gem /usr/bin/gem2.2 \
 --slave /usr/bin/irb irb /usr/bin/irb2.2 \
 --slave /usr/share/man/man1/ruby.1.gz ruby.1.gz /usr/share/man/man1/ruby2.2.1.gz \
 --slave /usr/share/man/man1/rake.1.gz rake.1.gz /usr/share/man/man1/rake2.2.1.gz \
 --slave /usr/share/man/man1/ri.1.gz ri.1.gz /usr/share/man/man1/ri2.2.1.gz \
 --slave /usr/share/man/man1/rdoc.1.gz rdoc.1.gz /usr/share/man/man1/rdoc2.2.1.gz \
 --slave /usr/share/man/man1/gem.1.gz gem.1.gz /usr/share/man/man1/gem2.2.1.gz \
 --slave /usr/share/man/man1/irb.1.gz irb.1.gz /usr/share/man/man1/irb2.2.1.gz

การรันสิ่งนี้จะลงทะเบียนทับทิมกับระบบทางเลือกและเนื่องจากมีเพียงตัวเลือกเดียวตั้งruby 2.2เป็นค่าเริ่มต้น สิ่งนี้จะสร้าง symlink และให้คุณใช้ruby/ gem/ ฯลฯ โดยไม่ต้องเพิ่ม 2.2 ในตอนท้าย

นี่เป็นรุ่นคำแนะนำที่อัปเดตเล็กน้อยที่https://leonard.io/blog/2012/05/installing-ruby-1-9-3-on-ubuntu-12-04-precise-pengolin/


ทางเลือกอัพเดท: ข้อผิดพลาด: อัญมณีทางเลือกไม่สามารถเป็นทาสของทับทิม: มันเป็นทางเลือกหลัก
Yevgen Kulik

17

ตกลงนี่ใช้ได้ผลกับฉันอย่างน้อยก็เมื่อ:

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

เมื่อวันที่เขี้ยวลากดินฉันได้รับข้อผิดพลาดเนื่องจาก URL จะหายไปมีเพียงhttp://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/wily/main/binary-amd64/http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/devel/main/binary-amd64/


เดียวกันกับ debian jessie: /
holms
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.