ruby on rails 在fedora18下的安装

天朝的网络原因,安装不是很顺畅,所以把过程记录下备用

前面下载rubygem什么的都比较快,新建一个project的时候会出问题

gem new my_project

会在bundle_install处卡很久,然后提示说某某东西没装,让装一下。。

大体上参考了两篇文章:

【第一篇帖子,google快照里找到的】
在Fedora系统安装Ruby on Rails
这几年一直在用AS3.0做开发,已经很久没有接触Linux了。博客上挂着Fedora的倒计时牌子,每次看到新版本倒计时一个接一个地陆续发布,这个周末重新装上了Fedora,学习一些其他的Web开发知识。虽说Ruby on Rails这几年不是很流行了,而且近期Twitter改用java引起了不小的震动,有些人认为RoR过时了,Ruby日薄西山了。我倒是觉得技术人员与其关注这些,不如去专注学习技术。

RubyonRailsRubyonRails

安装步骤

Fedora更新非常快,我用的是目前最新的Fedora 18。虽然按照文档和教程一步一步安装的,但还是遇到了很多问题。安装的方法有很多种,这个和Ruby语言的特性也很相似 ;-);-) 。考虑到环境配置和开发工作,使用RVM安装比较好,RVM可以管理多个Ruby版本和RubyGem,在开发时可以根据需要切换版本,配置环境也很方便。使用yum安装ruby,管理比较麻烦,不适合开发工作。

安装git和cURL

可以考虑先更新所有包

Bash
yum update
安装git

Bash
yum install git-core
安装curl

Bash
yum install curl
安装RVM

RVM,即Ruby Version Manager,可以管理多个版本Ruby,RubyGem,Rails,对开发来说非常有用。

Bash
curl -L get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm

安装完毕后检查RVM的软件包依赖

Bash
rvm requirements
输出信息如下:

TXT
Requirements for redhat/18./i386

NOTE: 'ruby' represents Matz's Ruby Interpreter (MRI) (1.8.X, 1.9.X)
This is the *original* / standard Ruby Language Interpreter
'ree' represents Ruby Enterprise Edition
'rbx' represents Rubinius

Additional Dependencies:
# For update-system:

# For rvm:
sudo yum install bash curl git patch

# For ruby:
sudo yum install gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison iconv-devel

# For jruby:
sudo yum install java
安装其它组件

这些软件是在运行时可能要用到的,根据需要安装。

Javascript运行时

访问ExecJS安装可支持的JavaScript运行时,推荐安装Node.js。
这里有点麻烦,可以先尝试通过yum查找,名称不一定是nodejs,如果有就安装

Bash
yum search *nodejs*
yum install nodejs
如果没有,就去找合适的RPM包,或者直接下载源代码编译安装;
安装node.js

Bash
cd node
sudo ./configure
sudo make
sudo make install
喝杯茶等待安装完毕,检查版本

TXT
[anthony@localhost ~]$ node -v
v0.9.8-pre
SQLite等组件

Bash
yum install libxslt-devel libxml2-devel sqlite-devel
安装Ruby

安装了RVM之后,所有Ruby相关的都可以用它来安装配置了。
安装Ruby

Bash
rvm install 1.9.3
如果报错,需要添加参数

Bash
rvm install 1.9.3 --with-openssl-dir=$HOME/.rvm/
使用ruby 1.9.3作为默认版本

Bash
rvm use 1.9.3 --default
检查ruby版本

Bash
ruby -v
更新gems

Bash
gem update
安装Rails

安装rails

Bash
gem install rails
检查rails版本

Bash
rails -v
Rails测试

安装完了,接下来可以用rails生成个helloWorld了。

Bash
mkdir rails_projects
cd rails_projects
rails new first_app
开始创建,喝杯茶……

TXT
create
create README.rdoc
create Rakefile
create config.ru
create .gitignore
create Gemfile
create app
create app/assets/images/rails.png
create app/assets/javascripts/application.js
create app/assets/stylesheets/application.css
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/views/layouts/application.html.erb
create app/mailers/.gitkeep
create app/models/.gitkeep
create config
create config/routes.rb
create config/application.rb
create config/environment.rb
create config/environments
.
.
.
create vendor/plugins
create vendor/plugins/.gitkeep
run bundle install
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Using rake (10.0.3)
Using i18n (0.6.1)
Using multi_json (1.5.0)
Using activesupport (3.2.11)
Using builder (3.0.4)
Using activemodel (3.2.11)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.4)
Using rails (3.2.11)
Using sass (3.2.5)
Using sass-rails (3.2.6)
Using sqlite3 (1.3.7)
Using uglifier (1.3.0)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
创建完毕,启动服务器

Bash
cd first_app
rails server
好了,打开浏览器,登录 http://localhost:3000看看 :-):-)

总结

万事开头难,第一次安装时经常遇到各种问题:ruby安装失败,gem update报错,rails生成报错,启动报错等等。不过总算完成了,接下来的时间里就要去边做边学了。

另外,我也开始尝试使用Markdown来写文档了,这篇总结就是由Markdown格式转换的。喝水不忘挖井人,最后缅怀一下Aaron Swartz。

Aaron SwartzAaron Swartz

参考资料

http://ruby.railstutorial.org/ruby-on-rails-tutorial-book
http://blog.sudobits.com/2012/05/02/how-to-install-ruby-on-rails-in-ubuntu-12-04-lts/
http://www.evansdiy.com/tips/the+way+to+install+nodejs
https://github.com/joyent/node#readme

【其他文章】
http://stackoverflow.com/questions/9336596/rvm-installation-not-working-rvm-is-not-a-function
stackoverflow上关于rvm文件要生效后才能使用的讨论

http://guides.ruby-china.org/getting_started.html
中文手册,开始按照这个安装步骤做,bundle install处发现了另一个:http://ruby.taobao.org/ 淘宝镜像。。。

json -v 1.8.0https://github.com/wpscanteam/wpscan/issues/92

至于ruby迷说的rails新建工程时的提速问题,可以看http://rubyer.me/blog/941/

为什么要搞ruby on rails?因为看了这里:http://blog.jobbole.com/15213/
关于web的几个方面:框架+部署+版本控制+web语言,框架选择了ruby on rails

ruby on rails在fedora18上install的更多相关文章

  1. 安装Ruby On Rails时运行“gem install rails”没有反应怎么办?

    这两天在我的mac机上安装Ruby On Rails,感觉很爽,似乎在使用一个Windows和Linux的结合体,要界面有界面,要命令行有命令行. 不过安装Ruby On Rails的过程中遇到一个问 ...

  2. 用VirtualBox和vagrant在win7×64上搭建ruby on rails 开发环境

    下载准备 1.vagrant 官方  WINDOWS Universal (32 and 64-bit) http://www.vagrantup.com/downloads.html 2.Virtu ...

  3. Mac上配置 Ruby on Rails和Git

    Ruby on Rails on Mac =============================================================================== ...

  4. 在linux,windows上安装ruby on rails开发环境

    ruby是一个非常优秀的语言,ruby的精髓rails可以让web开发的效率成倍的提高,下面就介绍一下我搭建rails环境的过程.windows下搭建ruby rails web开发环境本篇文章主要是 ...

  5. [Ruby on Rails系列]6、一个简单的暗语生成器与解释器(上)

    [0]Ruby on Rails 系列回顾 [Ruby on Rails系列]1.开发环境准备:Vmware和Linux的安装 [Ruby on Rails系列]2.开发环境准备:Ruby on Ra ...

  6. Install Ruby on Rails on Ubuntu 12.04 LTS

    1:Update package repository. sudo apt-get update 2:Install git and Curl.     Git:是一个简单,快速,高效的版本控制系统. ...

  7. ruby on rails爬坑(三):图片上传及显示

    一,问题及思路 最近在用rails + react + mysql基本框架写一个cms + client的项目,里面涉及到了图片的上传及显示,下面简单说说思路,至于这个项目的配置部署,应该会在寒假结束 ...

  8. win764位Ruby2.0环境搭建之Ruby on Rails

    一:安装Ruby 1.在http://rubyinstaller.org 下载需要的ruby版本,因为是exe文件,所以,你可以直接安装. 安装结束后,cmd上运行 ruby -v 显示版本号.如果正 ...

  9. 管理不同版本ruby和rails的利器——rvm

    近年来,ruby on rails逐渐火了起来,我想各位码农早就耳闻,特别是那些做B/S项目的童鞋,早就想跃跃一试了. 笔者也是初次接触ruby on rails ,我想,对于初学者来说,最好的学习方 ...

随机推荐

  1. TCP协议 连接三次握手

    TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标 ...

  2. Pushlets 配置参数详解

      基于 Pushlets 的消息推送设计 Pushlets 是通过长连接方式实现“推”消息的.推送模式分为:Poll(轮询).Pull(拉).本文围绕 Pull 模式进行设计. 原理 客户端发起请求 ...

  3. jenkins迁移升级简述

    1.迁移背景 原有jenkins版本为2.32.2,由于需要安装git parameter插件,插件安装失败,依赖暂时无法解决,因此决定升级jenkins版本,升级版本为2.121.2.   2.je ...

  4. BZOJ1185 [HNOI2007]最小矩形覆盖 【旋转卡壳】

    题目链接 BZOJ1185 题解 最小矩形一定有一条边在凸包上,枚举这条边,然后旋转卡壳维护另外三个端点即可 计算几何细节极多 维护另外三个端点尽量不在这条边上,意味着左端点尽量靠后,右端点尽量靠前, ...

  5. 洛谷 P2051 [AHOI2009]中国象棋 解题报告

    P2051 [AHOI2009]中国象棋 题目描述 这次小可可想解决的难题和中国象棋有关,在一个N行M列的棋盘上,让你放若干个炮(可以是0个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法. ...

  6. [JSOI2008]魔兽地图

    Description DotR里面的英雄只有一个属性——力量. 他们需要购买装备来提升自己的力量值,每件装备都可以使佩戴它的英雄的力量值提高固定的点数,所以英雄的力量值等于它购买的所有装备的力量值之 ...

  7. svn问题汇总

    1 svn图标 2 问题 SVN删除文件 一.本地删除SVN删除文件中的本地删除,指的是在客户端delete了一个文件,但还没有commit,使用revert来撤销删除. 二.服务器删除1.通过本地删 ...

  8. vue-devtools/安装vue-devtools

    一.在github上下载压缩包,github下载地址:https://github.com/vuejs/vue-devtools 二.解压到本地的某盘 三.用你的npm中进入该文件夹下 在npm中执行 ...

  9. webService与分布式与微服务与SOA的关系

    SOA:是面向服务体系架构. webservice是SOA的一种实现技术.webservice基于两种协议:soap和rest协议.现在常用的是rest协议. web service (web 服务) ...

  10. linux ------ 使用 TFTP 在两个主机之前传输文件

    TFTP是用来下载远程文件的最简单网络协议,它是基于UDP协议而实现.嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp- ...