Vinova tuyển lập trình viên Mobile & Web ở Hà Nội, lương $300-1000

Article: Cài đặt môi trường phát triển Ruby trên Ubuntu 2242

Ruby căn bản, Linux
alide.myopenid.com 32
Updated over 4 years ago
Chủ đề này giới thiệu cách cài đặt môi trường phát triển Ruby, Rails trên Ubuntu, một phiên bản Linux được đánh giá là dễ dùng hơn Windows!

Cài đặt Ruby và các thư viện

Các thư viện của Ruby có thể cài đặt bằng 3 cách.
  • Cách 1: Dùng package do Ubuntu cung cấp. Các file sẽ nằm trong thư mục site_ruby. => rất dễ cài trong đa số trường hợp, nhưng lệ thuộc vào Ubuntu nên thường phiên bản cũ vài tháng so với phiên bản mới nhất.
  • Cách 2: Cài bằng RubyGems. Các file sẽ sẽ nằm trong thư mục gems. => rất dễ cài trong đa số trường hợp, có thể lấy được những bản mới nhất.
  • Cách 3: Tự cài từ source. => mất công
Trước hết ta cài Ruby, ruby-dev, irb, ri, rdoc bằng cách 1, sử dụng Synaptic (gần giống Add/Remove programs của Windows, nhưng tiện dùng hơn rất nhiều):
  • Vào System > Administration > Synaptic Package Manager
  • Chọn các package có tên là ruby1.8, ruby1.8-dev, irb1.8, ri1.8, rdoc1.8. (thật ra khi chọn, Synaptic tự động thêm vào những package cần thiết khác), ấn Apply
  • Đợi một chút để Synaptic kết nối Internet để tải các package về rồi cài
  • Ruby được cài mặc định trong thư mục /usr/bin/ruby1.8, để thuận tiện nên tạo symbolic link:
 sudo ln -s /usr/bin/ruby1.8  /usr/bin/ruby 
  • Tương tự với irb
  • Gõ lệnh ruby -v, nếu hiện ra dòng ruby 1.8.5 (2006-08-25) [i486-linux] hoặc tương tự là bạn đã cài đặt thành công

Chú ý: Nếu không cài irb, khi chạy sẽ bị báo lỗi ở Dispatcher.dispatch

 ArgumentError: Anonymous modules have no name to be referenced by... 
Cài RubyGems bằng cách 3, vì package của Ubuntu cung cấp hoạt động không tốt:
  • Tải source mới nhất của RubyGems về rồi giải nén
  • Chuyển vào thư mục vừa giải nén, gõ lệnh sudo ruby setup.rb
Đến đây, máy đã có môi trường căn bản cần thiết để phát triển ứng dụng Ruby. Từ lúc này về sau, về nguyên tắc thư viện nào có thể cài bằng RubyGems (cách 2) thì nên cài bằng RubyGems.
  • Ví dụ để cài Rails, chỉ cần gõ lệnh: sudo gem install rails --include-dependencies
  • Ví dụ vì RMagick cài bằng RubyGems hoặc tự cài rất khó, nên ta dùng Synaptic: từ Synaptic, tìm rồi chọn package tên librmagick-ruby1.8

Cài Eclipse, Java, DataBase

  • Cài Eclipse bằng Synaptic Package Manager (SPM) sau đó cài Java của Sun. Theo mặc định Eclipse sẽ dùng Java của GNU có sẵn trong Ubuntu nên ta phải thay đổi biến môi trường.
    • find /usr -name java (tìm đường dẫn đến thư mục Java)
    • JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.00/jre/
    • export JAVA_HOME
    • eclipse (khởi động eclipse từ terminal mới dùng được Java của Sun)
    • Thêm dòng JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.00/jre/ vào cuối file .bashrc để mỗi lần khởi động lại máy ta khỏi phải đặt lại biến JAVA_HOME
  • DataBase
    • Cài PostgeSQL-8.2, pgadmin3 bằng SPM
    • sudo gem install postges-pr
    • sudo gedit /etc/postgresql/8.2/main/pg_hba.conf_ sửa dòng
 host    all         all         127.0.0.1/32          md5 

thành

 host    all         all         127.0.0.1/32          trust 
  • sudo /etc/init.d/postgresql-8.2 restart (khởi động lại PostgreSQL)

1  ... 9 10 11 

Editors
id.cntt.tv/[Anonymous] 9
dangtrieu.myopenid.com 5
ngocdaothanh.myopenid.com 174
alide.myopenid.com 32

Comments

id.cntt.tv/[Anonymous] 9
over 4 years ago
Định sửa, nhưng ghi vào đây để có tác dụng chú ý.

  • Trong Synaptic, phần ghi chú về rdoc1.9 và irb1.9 có mở ngoặc là for Ruby 1.9. Mà ruby1.9 thì k stable (các version có số lẻ hầu hết được được coi là k stable).
  • Chỗ ruby setup.rb quên sudo
ngocdaothanh.myopenid.com 174
over 4 years ago
Lúc nãy dùng irb1.9 mà Ruby lại là 1.8, nên k require được rubygems, RMagick… anh javi nhỉ!
id.cntt.tv/[Anonymous] 9
over 4 years ago
Ừ, đúng rồi. Anh làm nhầm thành ruby 1.9

You must login to be able to comment

Uploaded files

No file uploaded yet

You must login to be able to upload

Nhà tài trợ:

Mọi người đều tự do viết bài, sửa bài của người khác, và bình luận ở trang web này. Bạn muốn chủ động tạo bài mới để chia sẻ kinh nghiệm với mọi người? Xin click link ở dưới.

Create new content