在Ubuntu上安装Ruby On Rails

来源:互联网 发布:马龙白兰度 知乎 编辑:程序博客网 时间:2024/04/27 12:48
这段时间学习了一下Ruby,感觉真的是比较容易上手。特别是安装了Ruby On 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-dev zlib1g-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 mail text-format bundler thor i18n

 

很不幸,在我的环境中执行以上命令时出错,报的错是:

 

Could not find a valid gem '…' (>= 0) in any repository

网上查了一下发现好多人都有这种错,原因各种各样,感觉很不靠谱。我自己看看报错信息,就是找不到某些资源的问题。于是怀疑网络层面有问题,干脆翻墙出去试试,问题迎刃而解。至于怎么翻墙,就自己想办法吧,遇到这种问题时候就真的是“你有你的张良计,我有我的过墙梯”了。(怎么,不知道什么是翻墙?你是不是天朝人士?)

 

大家注意,以下过程都在翻墙状态下完成。

 

另外一个有趣的插曲是我在百度上搜索“ruby on rails could not find a valid gem”,出来百度翻译的结果,结果是“红宝石对钢轨无法找到一个有效的宝石”,有点哭笑不得,只能说它已经尽力了。

 

 

安装了以上组件后,通过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项目吧。

 

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 一年级的学生做题粗心怎么办 孩子做作业注意力不集中怎么办 小学三年孩子抄答案怎么办 孩子写作业不认真审题怎么办 一年级小孩审题不认真怎么办 孩子审题不认真马虎怎么办 孩子做作业不认真审题怎么办? 考老师考砸了怎么办 重要考试考砸了怎么办 二年级孩子做数学题粗心怎么办 二年级孩子考试粗心怎么办 二年级孩子考试总是粗心怎么办 二年级孩子总是粗心怎么办 小学一年级孩子抄别人作业怎么办 被老师发现抄答案怎么办 考试抄答案被老师发现怎么办 孩子撒谎不写作业怎么办 小学生做题容易马虎出错怎么办 小学生做题老是马虎怎么办 小学生做题马虎不认真怎么办 会做的题总做错怎么办 孩子数学做题粗心怎么办 孩子成绩考差了怎么办 孩子静不下心学习怎么办 孩子考试时总是粗心马虎怎么办 小学二年级学生厌学怎么办 三岁宝宝肚脐痛怎么办 做题速度太慢怎么办 孩子做题不动脑不会转弯怎么办? 孩子做题总是马虎怎么办 孩子做题总是眼高手低怎么办 小孩说幼儿园老师不喜欢他怎么办 初中学生了不喜欢读书怎么办 小孩吐怎么办给揉哪里 8岁了不爱写字怎么办呢 8岁了不会写字怎么办呢 高考做题时犯各种粗心错误怎么办 孩子做题不认真读题怎么办 孩子不爱学习怎么办有什么办法 小孩字写的不好怎么办 孩子的字写得丑怎么办