這段時間學習了一下Ruby,感覺真的是比較容易上手。特別是安裝了RubyOn Rails以後,發現通過Ruby On Rails建構網站真的很方便。在這裏分享一下我在Ubuntu上安裝Ruby On Rails的過程,安裝過程比較簡單,不容易出錯,對Ruby有興趣的同學們可以安裝一個試試,學習一種語言的最有效方式就是快速搭建一個環境開始寫代碼。
安裝過程參考了下面這個教程,該教程的作者是Ubuntu社區的“承古韻”,不確定“承古韻”是不是真名,是的話可真是一個有韻味的名字。
http://www.cnblogs.com/msblog/archive/2011/03/08/1977407.html
安裝之前先準備好Ubuntu環境,具體過程我就不講了,大家參考Ubuntu相關文章。
第一步是啓動Ubuntu,通過以下命令安裝一些相關的庫,安裝過程一般不會出什麼問題。
$ sudo apt-get install gcc g++ build-essential libssl-dev libreadline5-devzlib1g-dev linux-headers-generic
然後是下載Ruby1.9.2源碼,我按教程使用下面的命令下載成功,不過就是下載過程有點慢,大家給點耐心。
$ wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p0.tar.gz
下載了Ruby源碼後,解壓,配置,編譯,一切正常,命令如下:
$ tar -xvzf ruby-1.9.2-p0.tar.gz
$ cd ruby-1.9.2-p0/
$ ./configure –prefix=/usr/local/ruby
$ make && sudo make install
編譯成功後需要修改/etc/environment文件,將Ruby的路徑加入環境變量中,讓Ruby命令可以直接調用。
開始編輯etc/environment的命令如下:
$ sudo gedit /etc/environment
因爲使用gedit,所以會出現圖形界面的編輯界面,將Ruby的路徑加入環境變量中並保存/etc/environment,如下面內容:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/ruby/bin"
修改了環境變量文件後,需要通過source命令讓修改馬上生效,命令如下:
$ source /etc/environment
爲了檢查安裝是否成功,可以輸入下面的命令進行測試 :
$ruby –v
確認安裝成功後通過一下命令添加命令鏈接,目前我也不清楚創建這些鏈接的目的是什麼,按照Ruby“約定大於配置”的原則,應該是一種約定。
$ sudo ln -s /usr/local/ruby/bin/ruby /usr/local/bin/ruby
$ sudo ln -s /usr/local/ruby/bin/gem /usr/bin/gem
以上是安裝Ruby,心急的同學可以先測試一下Ruby的基本語法了。不心急的同學跟着後面的步驟安裝Rails.
首先是通過gem命令安裝一些組件,命令如下:
$ sudo gem install tzinfo builder memcache-client rack rack-test erubis mailtext-format bundler thor i18n
很不幸,在我的環境中執行以上命令時出錯,報的錯是:
Could not find a valid gem '…' (>= 0) in any repository
網上查了一下發現好多人都有這種錯,原因各種各樣,感覺很不靠譜。我自己看看報錯信息,就是找不到某些資源的問題。於是懷疑網絡層面有問題,乾脆***出去試試,問題迎刃而解。至於怎麼***,就自己想辦法吧,遇到這種問題時候就真的是“你有你的張良計,我有我的過牆梯”了。(怎麼,不知道什麼是***?你是不是天朝人士?)
大家注意,以下過程都在***狀態下完成。
另外一個有趣的插曲是我在百度上搜索“ruby on rails could not find a validgem”,出來百度翻譯的結果,結果是“紅寶石對鋼軌無法找到一個有效的寶石”,有點哭笑不得,只能說它已經盡力了。
安裝了以上組件後,通過gem繼續安裝,命令如下:
$ sudo gem install rack-mount
$ sudo gem install rails
一切順利,安裝完成後注意要執行一下命令讓新的環境變量生效:
$ source /etc/environment
然後通過以下命令檢查Rails安裝是否成功:
$ rails –v
安裝了Rails以後安裝MySQL數據庫,命令如下,在我的環境中安裝過程一切正常:
$sudo apt-get install mysql-server libmysqlclient-dev libmysql-ruby
$sudo gem install mysql
安裝完mysql後會有一個配置過程,關鍵就是設置mysql數據庫的root用戶的密碼,按照你的喜好設置一個密碼,一定要記住,後面要用的。
然後是安裝spree框架,命令如下:
$sudo gem install spree
安裝時報錯,說找不到libxml2庫,在這裏我折騰了好久,因爲不斷髮現有其他庫沒有安裝。爲了方便大家,直接將需要的庫列出來,他們是:libxml2 libxml2-dev和libxslt1-dev。
安裝命令如下:
sudo apt-get install libxml2 libxml2-dev libxslt1-dev
安裝後再次執行spree安裝命令:
$sudo gem install spree
安裝成功!
安裝完了就開始測試了,創建一個簡單的應用測試一下。
通過一下命令創建應用,注意其中的xxx是你的應用名:
$rails new xxx -d=mysql
$cd xxx
我使用的應用名是first,所以命令如下:
$rails new first -d=mysql
$cd first
進來first目錄就可以看到創建的各個子目錄了,充分體現了Ruby的“約定大於配置”的原則,很多目錄和文件都按約定創建好了。
因爲數據庫有密碼,所以需要配置一下mysql配置文件,配置文件是config/database.yml,通過gedit打開並進行修改,database.yml文件的內容大概是下面這樣的:
development:
adapter: mysql2
encoding: utf8
database: blog_development
pool: 5
username: root
password:
socket: /tmp/mysql.sock
修改是需要在password: 一行填寫你的mysql數據庫密碼,
注意!! 這個文件裏有三個地方需要填寫這個密碼的,我第一次測試時只填寫了一個,後面創建數據庫時就一直出錯,搞了老半天。
因爲要用spree框架,所以需要編輯Gemfile文件,在裏面添加一句
gem 'spree'
然後後執行下面的命令創建數據庫:
$ bundle install
$ rake db:create
執行“rake db:create”時在我的環境中出錯,錯誤信息如下:
“Could not find a JavaScript runtime”
爲了解決這個問題,需要再次修改Gemfile文件,加入下面兩行:
gem 'execjs'
gem 'therubyracer'
加完保存後再次執行bundle install命令安裝組件
$ bundle install
然後再執行“rake db:create”就沒問題了
$ rake db:create
最後一步,通過以下命令啓動服務器:
$rails server
啓動後在Ubuntu上打開瀏覽器訪問地址http://localhost:3000
訪問結果如下,到此就安裝成功了,開始做你的Ruby on Rails項目吧。
ubuntu 安裝rails
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.