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. delphi clientdataset判断某一行值是否存在

    ClientDataSet的数据查找.我所介绍的心得和技巧都是用ClientDataSet来做范例,也可以应用于其他的一些DataSet.废话就不多说了.我们还是先看代码,让后再总结.1.Scanni ...

  2. 【HTML5】中的一些新标签

    1.element.classList 获取该元素的所有类名,并以数组方式列出. 增加类名:element.classList.add(class1,class2); //可添加一个或多个. 去除类名 ...

  3. MT【77】函数的定义理解

    答案:D.比如C 中令$x^2+1=2,x=-1,1,$ 得$f(2)=0,2$与定义矛盾,A,B同理排除. D中注意到$x^2-2x$与$|x-1|$对称轴都是$x=1$. 评:函数的定义,首先是两 ...

  4. noip2017颓废记

    作为一个从初中就开始学信息的蒟蒻,自然要去提高组了~~~ 比赛前day1 跟平常一样在机房颓废着,上午在洛谷看到了站长大人的忠告后,看了看模板题,发现没几个会打的(正常). 下午想一想发现自己的dp垃 ...

  5. 【CXF】- 拦截器 Interceptor

    CXF拦截器 拦截动态操作请求和响应数据 拦截器分类 位置:服务器端拦截器,客户端拦截器 消息方向:入拦截器 出拦截器 定义者:系统拦截器 自定义拦截器:LoggingInInteceptor ①:创 ...

  6. 在Mac OS X上用Fluid把网页变成本地App

    最近一直在个在线听音乐的解决方案,也下了很多的本地软件,什么酷狗.酷我.豆瓣.虾米.QQ.百度音乐之类的,下了一大堆,都逐个测试了,效果都不是很理想-- 要么是UI太悲催,要么是对Retina支持不友 ...

  7. jupyter notebook添加Anaconda虚拟环境的python kernel

    之前在自己博客上写了一个如何通过自建配置文件,让jupyter notebook可以调用conda虚拟环境的python解释器. 今天介绍一种更加简单的方式,无需手动配置文件,利用ipykernel可 ...

  8. 解题:NOIP 2018 保卫王国

    题面 最小支配集=全集-最大独立集 所以先把点权改成正无穷/负无穷来保证强制选/不选某个点到独立集里,然后变成了洛谷的动态DP模板 GTMDNOIP2018ZTY #include<stack& ...

  9. 适用于vue项目的打印插件(转载)

    出处:https://www.cnblogs.com/lvyueyang/p/9847813.html // 使用时请尽量在nickTick中调用此方法 //打印 export default (re ...

  10. Kubernetes Pod详解

    目录 基本概念 pod资源配额 容器的健康检查 静态pod 基本概念 Pod是kubernetes集群中最基本的资源对象.每个pod由一个或多个业务容器和一个根容器(Pause容器)组成.Kubern ...