iT邦幫忙

DAY 5
3

程式學習雜記系列 第 5

2013IT鐵人賽-05-ruby01-Ruby程式安裝與小測試

2013IT鐵人賽-05-ruby01-Ruby程式安裝與小測試

2013IT鐵人賽-05-ruby01-Ruby程式安裝與小測試

在學習Ruby的時候, 之前更常聽到 Ruby on Rails (謎之音:這個也是要先學完Ruby 之後的事情了吧),去查了一下網路上的資料, 大部分的學習者都是搭配 ruby 1.9.3 的版本, 所以本次學習的ruby版本就鎖定在 ruby 1.9.3 了(此次的書籍涵蓋 ruby 1.8 以及 1.9).

說真的, 歐萊禮出版社的書不愧是O’REILLY的書, 唸完第一章, 昏迷指數就急速上升......
所以首要之務就是先搞定ruby開發環境.
書上的作法是到官方網站 https://www.ruby-lang.org 的下載連結 https://www.ruby-lang.org/zh_tw/downloads/ 來進行安裝. 這個部份可依照自己的作業系統以及喜好來安裝, 我用的環境是 EasyCloud 內所提供的 openSUSE 12.2 作業系統.

所以就使用指令來進行查詢與安裝了喔. :-)

zypper search --match-words ruby

正在載入套件庫資料...
讀取已安裝的套件...


S | 名稱                          | 摘要                                                 | 類型    
--+-------------------------------+------------------------------------------------------+---------
  | cmpi-bindings-ruby            | Adapter to write and run CMPI-type CIM providers i-> | 套件    
  | graphviz-ruby                 | Ruby Extension for Graphviz                          | 套件    
  | kdebindings3-ruby             | Ruby Bindings for Qt and KDE Libraries               | 套件    
  | kross-ruby                    | Ruby Bindings for kross                              | 套件    
  | libcaca-ruby                  | Ruby bindings for libcaca                            | 套件    
  | libstorage-ruby               | Ruby bindings for libstorage                         | 套件    
  | openwsman-ruby                | Ruby bindings for openwsman client API               | 套件    
  | ruby                          | An Interpreted Object-Oriented Scripting Language    | 套件    

這邊由於 ruby 的相關套件太多, 所以我在使用 zypper 查詢的時候使用 --match-words 來要求 zypper 查詢要符合整個字. 目前看起來是沒有安裝 ruby 的, 但是還要進一步確認版本.

zypper search --match-words -s ruby

正在載入套件庫資料...
讀取已安裝的套件...


S | 名稱                          | 類型     | 版本              | 結構   | 套件庫              
--+-------------------------------+----------+-------------------+--------+---------------------
  | cmpi-bindings-ruby            | 套件     | 0.5.4-2.1.2       | x86_64 | openSUSE-12.2-Oss   
  | cmpi-bindings-ruby            | 套件     | 0.5.4-2.1.2       | i586   | openSUSE-12.2-Oss   
  | graphviz-ruby                 | 套件     | 2.28.0-10.5.2     | x86_64 | openSUSE-12.2-Update
  | graphviz-ruby                 | 套件     | 2.28.0-10.2.2     | x86_64 | openSUSE-12.2-Oss   
  | graphviz-ruby                 | 套件     | 2.28.0-10.5.2     | i586   | openSUSE-12.2-Update
  | graphviz-ruby                 | 套件     | 2.28.0-10.2.2     | i586   | openSUSE-12.2-Oss   
  | kdebindings3-ruby             | 套件     | 3.5.10-21.1.2     | x86_64 | openSUSE-12.2-Oss   
  | kdebindings3-ruby             | 套件     | 3.5.10-21.1.2     | i586   | openSUSE-12.2-Oss   
  | kross-ruby                    | 套件     | 4.8.5-1.4.1       | x86_64 | openSUSE-12.2-Update
  | kross-ruby                    | 套件     | 4.8.4-1.1.2       | x86_64 | openSUSE-12.2-Oss   
  | kross-ruby                    | 套件     | 4.8.5-1.4.1       | i586   | openSUSE-12.2-Update
  | kross-ruby                    | 套件     | 4.8.4-1.1.2       | i586   | openSUSE-12.2-Oss   
  | libcaca-ruby                  | 套件     | 0.99.beta18-4.1.2 | x86_64 | openSUSE-12.2-Oss   
  | libcaca-ruby                  | 套件     | 0.99.beta18-4.1.2 | i586   | openSUSE-12.2-Oss   
  | libstorage-ruby               | 套件     | 2.22.11-1.1.1     | x86_64 | openSUSE-12.2-Oss   
  | libstorage-ruby               | 套件     | 2.22.11-1.1.1     | i586   | openSUSE-12.2-Oss   
  | openwsman-ruby                | 套件     | 2.3.5-2.2.3       | x86_64 | openSUSE-12.2-Oss   
  | openwsman-ruby                | 套件     | 2.3.5-2.2.3       | i586   | openSUSE-12.2-Oss   
  | ruby                          | 套件     | 1.9.3-2.8.1       | x86_64 | openSUSE-12.2-Update
  | ruby                          | 套件     | 1.9.3-2.4.1       | x86_64 | openSUSE-12.2-Update
  | ruby                          | 套件     | 1.9.3-2.2.1       | x86_64 | openSUSE-12.2-Oss   
  | ruby                          | 套件     | 1.9.3-2.2.1       | x86_64 | openSUSE-12.2-1.6   
  | ruby                          | 套件     | 1.9.3-2.8.1       | i586   | openSUSE-12.2-Update

這邊則是加上 -s 顯示版本詳細資訊來確認 ruby 的版本, 目前看起來是 1.9.3, 符合我的目標.
接下來進行安裝的動作.

zypper install ruby

正在載入套件庫資料...
讀取已安裝的套件...
正在解決套件相依性...


將會安裝下列新的套件:
  libyaml-0-2 ruby ruby19 


3  新套件將被安裝.
全部下載大小: 3.8 MiB。 完成操作後,將增加 16.2 MiB 的使用。
要繼續嗎? [y/n/?] (y): y ( 請輸入 y進行安裝)

接下來可以使用 rpm 指令查詢相關資訊

rpm -qi ruby

Name        : ruby
Version     : 1.9.3
Release     : 2.8.1
Architecture: x86_64
Install Date: 西元2013年09月09日 (週一) 18時17分17秒
Group       : Development/Languages/Ruby
Size        : 815
License     : MIT
Signature   : RSA/SHA256, 西元2013年08月30日 (週五) 21時48分36秒, Key ID b88b2fd43dbdc284
Source RPM  : ruby-1.9.3-2.8.1.src.rpm
Build Date  : 西元2013年08月22日 (週四) 20時29分29秒

或是 zypper 指令查詢也可以

zypper info ruby

正在載入套件庫資料...
讀取已安裝的套件...



套件 ruby 的資訊:


套件庫: openSUSE-12.2-Update
名稱:ruby
版本:1.9.3-2.8.1
結構:x86_64
供應商: openSUSE
已安裝:是
狀態:最新

接下來就來測試 ruby 可否正常的運作吧.

ruby -e 'puts "Hello world!!" '

Hello world!!

* 上面的 -e 會執行 ruby 的程式碼
* puts 則是會顯示後面的字串+換行符號(newline 字符)
* 輸出的結果則是 Hello world!!

到這邊, 我們已經完成 ruby 程式安裝與小測

Fun with Day 5 ~


上一篇
2013IT鐵人賽-04-程式學習未來目標-貢獻FOSS專案
下一篇
2013IT鐵人賽-06-ruby02-Ruby線上學習小記
系列文
程式學習雜記26
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

我要留言

立即登入留言