[Ruby on Rails系列]2、开发环境准备:Ruby on Rails开发环境配置
前情回顾
上次讲到Vmware虚拟机的安装配置以及Scientific Linux 6.X系统的安装。这回我们的主要任务是在Linux操作系统上完成Ruby on Rails开发环境的配置。
在配置环境之前,首先要解释一下Scientific Linux 6.x,该Linux发行版与CentOS、Red Hat Linux的管理机制比较类似。如果你的Linux采用的是上述系统,基本上配置过程完全一致;如果你采用的是Ubuntu系统,配置过程可能会稍有不同。
那么,Start!【请以管理员账号登陆系统,完成安装,安装结束后以普通用户登录编程】
Step1:安装Ruby
【1】进入官网(https://www.ruby-lang.org/zh_cn/)下载Ruby安装源码ruby-2.1.2.tar.gz
【2】打开/root/Downloads文件夹,找到所下载的文件,将其复制到/usr/lib/ruby文件夹下(usr/lib下没有ruby文件夹,则新建ruby文件夹)
【3】解压ruby-2.1.2.tar.gz:在/usr/lib/ruby文件夹下打开终端输入
tar xvzf ruby-2.1.2.tar.gz
【4】进入ruby-2.1.2文件夹:在终端输入
cd ruby-2.1.2
【5】安装依赖(非常重要)如果后续Gem或者Rails安装出错,很有可能是此步没有做
在终端输入:
yum -y install gcc gcc-c++
yum –y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel
【6】在终端输入
./configure
【7】在终端输入
make
【8】在终端输入
make install
【9】Ruby安装完毕,在终端输入
ruby --version
测试安装是否成功
Step2:安装Gem,Git,Rails
【1】安装Gem
1)在终端输入
gem --version
查看Gem版本
2)在终端输入
gem update --system
3)在终端输入
gem update
如没有问题,则顺利完成Gem更新;如遇到问题可能是Step1安装依赖那一步没有做好。我在Ubuntu下就曾经遇到了这样的问题(一个是zlib的依赖问题,一个是openssl的依赖问题,最后参考这位大神的文章解决的【http://www.aichengxu.com/view/34894】
【2】安装Git
在Scientific Linux下安装Git可直接通过Yum。步骤如下:
yum -y install git git --version
【3】安装Rails
在终端直接输入:
gem install rails
等待安装完毕即可。
Step3:安装配置Java环境
【1】为什么要安装Java环境?
至此,其实Ruby on Rails已经安装好了。可是为什么要安装Java环境呢?因为我们要使用Aptana集成开发环境开发RoR程序,而Aptana需要Jre的支持,因此需要我们配置Java环境。
请注意该发行版要下载RPM版本
【3】安装Java
在Downdolds文件夹【RPM包所在的文件夹,通常是/root/Downloads】下打开终端,输入
rpm -ivh jdk-8u20-linux-i586.rpm
终端会自动进行JDK的安装
【4】测试Java
由于使用RPM包进行安装,Linux自动在usr/bin下建立了Java和Javac的软链接,即使不配置环境变量,照常可以使用Java(体会到了Linux文件系统的魅力!)
Step4:安装配置Aptana集成开发环境
【1】下载Aptana开发环境
http://www.aptana.com/products/studio3
【2】将下载好的安装文件从/root/Downloads文件夹复制到/opt文件夹下
【3】在opt文件夹下解压Aptana
【4】在有Java环境的基础上,就可以点击AptanaStudio3直接运行啦~
【5】写个程序测试下
至此,Ruby on Rails的开发环境已经配置完毕,在Aptana集成开发环境下可以切换到终端界面,输入irb,即可进入ruby交互环境了哟~
在环境配置完毕后,你就可以切换回非root账户进行开发啦!
另外,如果需要安装rspec只需要在终端输入:gem install rspec 就可以啦~如果提示权限不足,请在root账户进行。
后记:需要注意的几点
1、本文适合Red hat Linux系列、CentOS系列、Fedora系列、Scientific Linux系列,如果你是Ubuntu系统需要做相应的变通。
2、在安装之前请务必安装依赖包,我在Ubuntu下由于2个依赖包没有装上,害我研究了一下午,尤其是那个openssl的依赖问题,具体见上文链接。
3、安装Aptana之前需要安装Java环境,如果你不是采用RPM安装方式,请记得设置环境变量,设置环境变量的方法可自行百度。
4、安装环境请在root权限下进行,开发最好不要在root账户下进行。
下一篇:Ruby on Rails系列3,敬请期待~
[Ruby on Rails系列]2、开发环境准备:Ruby on Rails开发环境配置的更多相关文章
- [Ruby on Rails系列]3、初试Rails:使用Rails开发第一个Web程序
本系列前两部分已经介绍了如何配置Ruby on Rails开发环境,现在终于进入正题啦! Part1.开发前的准备 本次的主要任务是开发第一个Rails程序.需要特别指出的是,本次我选用了一个(Paa ...
- 别梦依稀咒逝川,Ruby二十八年前|M1芯片Mac os系统配置Ruby(3.0.0) on Rails(6.1.1)开发环境(2021最新攻略)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_188 在每个开发者心里,都会有一门"最好"的语言,在这个世界的某个深处,在一些矫矫不群的人们心中,这门语言的名 ...
- [Ruby on Rails系列]6、一个简单的暗语生成器与解释器(上)
[0]Ruby on Rails 系列回顾 [Ruby on Rails系列]1.开发环境准备:Vmware和Linux的安装 [Ruby on Rails系列]2.开发环境准备:Ruby on Ra ...
- [Ruby on Rails系列]4、专题:Rails应用的国际化[i18n]
1. 什么是internationalization(i18n)? 国际化,英文简称i18n,按照维基百科的定义:国际化是指在设计软件,将软件与特定语言及地区脱钩的过程.当软件被移植到不同的语言及地区 ...
- Rails的三种环境----开发环境,生产环境和测试环境
Rails 的三个环境 Rails 的应用程序预设提供了三种不同的执行模式: development environment 开发模式,用在你的开发的时候 test environment 测试模式, ...
- Ruby on Rails创始人DHH谈如何进行混合移动APP开发
混合型APP兼具原生型APP软件良好用户交互体验的优势和网页型APP软件跨平台开发的优势,并且其开发成本和网页型APP软件接近,其开发效率也远高于原生型APP软件.混合型APP已经被众多企业所认可.最 ...
- Maven系列第9篇:多环境构建支持,核心开发必备!
maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能. 这是maven系列第9篇. 整个maven系列的内容前后是有依赖的,如果之前没有接触过maven,建议从第一篇看起,本文尾部 ...
- 整理Ruby相关的各种概念(rvm, gem, bundle, rake, rails等)
转自:http://henter.me/post/ruby-rvm-gem-rake-bundle-rails.html Ruby 这个就不用多说了 RVM 用于帮你安装Ruby环境,帮你管理多个Ru ...
- Ruby学习笔记2 : 一个简单的Ruby网站,搭建ruby环境
Ruby on Rails website 的基础是 请求-返回 循环. 首先是浏览器请求服务器, 第二步,Second, in our Rails application, the route ta ...
随机推荐
- OC3_选择器
// // Dog.h // OC3_选择器 // // Created by zhangxueming on 15/6/16. // Copyright (c) 2015年 zhangxueming ...
- WMI查看电脑信息,devenv管理自己的解决方案
最近把公司用的电脑重装了一下,期间用到了驱动精灵,驱动精灵把电脑的全方面信息都显示出来了,让人有种一目了然的感觉,为什么我不自己也写个呢?虽然显示的数据不一定有驱动精灵全单至少是我自己写的,不是吗? ...
- Oracle常见的问题
1.oracle 中文问号乱码解决方法: 在系统变量里面添加变量名:NLS_LANG 变量值: SIMPLIFIED CHINESE_CHINA.ZHS16GBK 2.查询oracle 里的主键 S ...
- xamarin android——数据绑定到控件(一)
mono for android 中光标由ICursor 接口标识,该接口公开了操作结果数据集的所有方法.光标的使用非常消耗系统资源,所以不使用时应该光比光标.可以通过StartManagingCur ...
- React-router 要点
1.关于url中传参的问题 比如我想打开: /articles/detail/101 在url中要传一个参数 /articles/detail/:articleId 路由中:<Route pat ...
- A version is required for an API group definition.
A version is required for an API group definition.
- CodeIgniter 框架---学习笔记
1.输出sql语句:echo $this->db->last_query();
- 【转】#ifdef __cplusplus深度剖析
原文:http://bbs.ednchina.com/BLOG_ARTICLE_251752.HTM 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus extern ...
- 2014年辛星完全解读Javascript第八节 json
json是JavaScript Object Notation的简写,它是一种轻量级的数据交换格式,而且表达上很容易靠字面去理解.json是用于存储和传输数据的格式,通常用于向服务器端传递数据. ** ...
- 2014年辛星完全解读Javascript第六节 对象
随着面向对象的普及,现在很多语言都在支持面向对象,Javascript也不例外,所谓对象,就是拥有属性和方法的数据.这里的属性其实就是变量,这里的方法,其实就是函数.但是Javascript的面向对象 ...