• ubuntu 14.04中安装 ruby on rails 环境


    环境:在win7 上Vmware虚拟机环境中安装的ubuntu 14.04

    1. bundle install 时,报json错误
    可以看出是在安装nokogiri时遇到了问题,此时执行

    sudo apt-get install libxml2-dev libxslt-dev

    2. 指定路径安装
    bundle install --path vendor/bundle


    3. gem 安装rails报错
    ERROR: Error installing rails:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/nio4r-2.3.0/ext/nio4r
    /usr/bin/ruby2.3 -r ./siteconf20180412-5186-17ke2ek.rb extconf.rb
    mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

    extconf failed, exit code 1

    Gem files will remain installed in /var/lib/gems/2.3.0/gems/nio4r-2.3.0 for inspection.
    Results logged to /var/lib/gems/2.3.0/extensions/x86-linux/2.3.0/nio4r-2.3.0/gem_make.out


    ------------------------ubuntu 14.04-----------------------
    4.安装 gcc 【ruby环境需要的】
    sudo apt-get install g++


    5. Ubuntu14.04
    更新系统
    安装aptitude
    sudo apt-get install aptitude

    更新软件的源文件并进行更新
    sudo aptitude update
    sudo aptitude -y upgrade 【更新时间太长】

    使用apt-get命令行工具来安装Ruby和RubyGems

    安装完整的Ruby包和RubyGems
    sudo apt-get install ruby-full rubygems 【报错】


    sudo apt-get install rails
    默认安装rails 3.2.16 ruby 1.9

    查看gem源
    gem sources -l

    gem sources --remove http://rubygems.org/
    gem sources -a http://gems.ruby-china.org


    ubuntu上的软件包已经最新
    解决方案:使用以下命令手动更新包

    sudo apt-get update
    sudo apt-get upgrade 

    安装必要的软件及包
    若是没有制定该步骤,则需要在下面单独安装包

    sudo apt-get install -y build-essential openssl curl libcurl3-dev libreadline6 libreadline6-dev git zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf automake libtool imagemagick libmagickwand-dev libpcre3-dev libsqlite3-dev

    -------------------------------------------------------------------------------------------------

    本文说明:所有的命令均在$ 之后,若$前边带有信息,只是为了方便你理解和与自己对照。


    安装过程中由于这样那样的原因,产生许多坑,所谓坑是对初学者来说,大牛们飘过吧。

    步骤1、从官网下载ubuntu 14.04 X64

    http://124.205.69.136/files/2013000000502943/202.141.176.110/ubuntu-cdimage/ubuntukylin/releases/14.04/release/ubuntukylin-14.04-desktop-amd64.iso
    安装时,选择版本时,建议选择最后一种,也就是组建最多的一种,这样就不用自己一个个下载了

    步骤2、安装虚拟机Vmware,使用镜像安装ubuntu 我采用的VM是10

    在此给大家说一小技巧,在虚拟机上完成一次改动,可以做一个快照,若是下步出错,随时撤回。做快照就几秒钟,恢复到某一快照也就几秒钟,非常适合初学者熟悉环境搭建使用

    步骤3、先说坑吧,也是大家下面安装所要注意的问题。

    坑1、关于终端,一定要使用启动器打开

    安装完虚拟机,进入系统,我们便会遇到第一个坑,终端软件,建议大家都使用启动器打开终端,

    千万不要使用文件管理器,进入文件夹,再右键“在终端中打开”,这个时候,环境变量加载不上,尤其在非桌面文件夹进入时。终端加载不上环境变量,大多的软件都没法在终端中执行。

    打开终端时,一定要通过启动器,所谓启动器,就是在bantu中放在桌面左侧的侧边栏,很像windows中的快捷方式

    坑2、关于假设,大多数网站都假设你安装了一些基本包或者软件,但是有不提,这让初学者搭建环境尤其费力。

    假设1、你已经安装了某软件,如curl

    针对这种,解决方法:手动安装软件,命令:$ apt-get install 包名字,

    假设2、你能链接上国外的rvm、gem源服务器,国内现状,大家懂得。所以,必须用替代的国内源服务器。

    你在下边安装过程中,

    若是出现了服务器积极拒绝,80%的可能行是被墙了。或者被你公司、家所在网络屏蔽掉了

    若是出现了速度很慢,半天不动的现象,恭喜你,你得换源地址了。

    rvm解决方法:安装完rvm,确保rvm -v可以执行后,执行以下命令,替换服务器资源信息

    1
    $ sed -i -e 's/ftp.ruby-lang.org/pub/ruby/ruby.taobao.org/mirrors/ruby/g' ~/.rvm/config/db

    gem 解决方法:

    1
    2
    3
    4
    5
    6
    //列出当前源列表
    $ gem source
    //注意,下面我们删除默认源,添加淘宝源,相对来说,淘宝源无论速度还是稳定性,远比默认的要高
    $ gem source -r https://rubygems.org/
    //添加淘宝源,
    $ gem source -a https://ruby.taobao.org

    假设3:你ubuntu上的软件包已经最新

    解决方案:使用以下命令手动更新包

    1
    2
    $ sudo apt-get update
    $ sudo apt-get upgrade  

    安装必要的软件及包

    若是没有制定该步骤,则需要在下面单独安装包

    1
    $ sudo apt-get install -y build-essential openssl curl libcurl3-dev libreadline6 libreadline6-dev git zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf automake libtool imagemagick libmagickwand-dev libpcre3-dev libsqlite3-dev

    步骤4、安装ruby on rails 相关软件

    参考:https://ruby-china.org/wiki/install_ruby_guide

    以下步骤主要参照上边网址,这个网站做了许多假设,而且也没提到这些假设,就产生了所谓的坑,我们主要填坑

     ubuntu自带ruby 版本比较低,我们要安装最新版的2.2.0

    1)更新随机自带的软件包,这个是很必要的,否则下面可能产生N多错误 

    1
    2
    $ sudo apt-get update
    $ sudo apt-get upgrade 

     2)安装curl,我们需要用它来装rvm

    1
    $ sudo apt-get install curl  

    3)安装rvm,我们使用rvm安装ruby、rails等,rvm安装参见:https://ruby-china.org/wiki/rvm-guide 步骤1

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    $ curl -L get.rvm.io | bash -s stable
    //若提示找不到公钥,执行下边语句
    $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
    //然后,重新执行,安装完rvm之后,需配置终端,以便下次打开终端能直接只用rvm。更改终端配置方法:参见https://rvm.io/integration/gnome-terminal
    $ curl -L get.rvm.io | bash -s stable
    //至此,rvm安装完成,下边我们手动为终端配置rvm环境,否则以后在终端中可能每次都要手动加载rvm环境
    //更改终端配置方法:工具栏--编辑--配置文件首选项--标题和命令--命令--选中“以登录shell方式运行命令”
    //然后,我们手动加载rvm环境,将服务器资源改为淘宝的
    ///////$ source ~/.rvm/scripts/rvm 官方的加载rvm环境命令,我们就不执行了
    //临时加载rvm环境,参考:https://rvm.io/integration/gnome-terminal
    $ source ~/.bashrc
    $ source ~/.bash_profile
    //更改rvm源服务器资源信息,毕竟国外的经常被墙掉,还有就是国内的速度快。若不设置,下面可能出现各种问题,如出现服务器积极拒绝(被墙),或者下载速度慢
    $ sed -i -e 's/ftp.ruby-lang.org/pub/ruby/ruby.taobao.org/mirrors/ruby/g' ~/.rvm/config/db
    //请保存你的工作,然后重启ubuntu系统
    $ sudo reboot
    //重启完后,打开终端,我们便可以使用rvm了,
    //列出rvm远程服务器上都有那些可用的ruby版本
    $ rvm list known
    //安装rvm需要的包
    $ rvm requirements

    4)安装ruby,我们选择最新的,不带版本号就是说装最新的,

    更多参考:https://ruby-china.org/wiki/install_ruby_guide 步骤2

    1
    2
    3
    4
    5
    6
    7
    $ rvm install ruby
    //安装完,看一下安装的版本
    $ ruby -v
    //这个时候,应该显示的是2.2.0,
    //通过下面操作,我们把这个作为ruby默认版本,若是你机子上有多个版本的话,参考:https://ruby-china.org/wiki/install_ruby_guide步骤3
    $ rvm use 2.2.0 --default
    //尝试安装rails,几乎可以肯定会失败,我们姑且看看会有啥样的错误吧 

    5)下边我们要用到gem,使用前,先切换到淘宝服务器 gem更多使用

    参见://查看当前gem源列表,默认源是https://rubygems.org/

    1
    2
    3
    4
    5
    $ gem source
    //注意,下面我们删除默认源,添加淘宝源,相对来说,淘宝源无论速度还是稳定性,远比默认的要高
    $ gem source -r https://rubygems.org/
    //添加淘宝源,
    $ gem source -a https://ruby.taobao.org

    6)使用gem安装rails

    参考:https://ruby-china.org/wiki/install_ruby_guide 步骤4

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $ gem install rails
    gem install rails -v 4.2.6
    //若报错相关信息nokogiri-1.6.5.gem,缺少这个包,或者这个包有问题安装不上,执行下边命令手动安装nokogiri
    $ gem install nokogiri -v=1.6.5
    //如果安装nokogiri报错,需要依赖包 libxslt libxml2,那我们就先装这俩依赖包
    $ sudo apt-get install libxslt libxml2
    //装完依赖包后,继续安装nokogiri-1.6.5.gem
    $ gem install nokogiri -v=1.6.5
    //安装完nokogiri,我们就可以继续rails的安装步骤了
    $ gem install rails
    //安装完后,查看rails版本
    $ rails -versions
    //这时,应该是最新的4.2.0 

    步骤5、正式开始安装ruby on rails

    //参考:http://guides.ruby-china.org/getting_started.html

    1、版本检查,查看以下依赖工具版本,务必确保都安装了

    1
    2
    3
    4
    5
    6
    //查看ruby版本
    ruby -v
    //查看rails版本
    rails -v
    //查看sqlite3版本
    $ sqlite3 --version  

      若没有安装,使用apt-get install sqlite3 安装

    2、建立项目工程

    //特别提醒,不要在文件夹中右键使用“在终端中打开”,目前不确定这个是不是在加载环境变量方面有bug


    1)我们先确保自己电脑存在以下目录:/home/myusername/app/rails,若没有,则创建

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //查看当前所在目录
    zxh@zhangxh-ubuntu:~$ pwd
    //我的显示如下
    /home/zxh
    $ mkdir app
    $ cd app
    $ mkdir rails
    $ cd rails
    结果如下:
    zxh@zhangxh-ubuntu:~/app/rails$ 

    2)在上边创建的目录下,创建rails工程

    1
    2
    3
    4
    5
    //建立blog项目,注意,区别于官网,这里我们不进行bundle install,在完成网站开发后,再手动bundle install
    zxh@zhangxh-ubuntu:~/app/rails$ rails new blog --skip-bundle
    //进入blog文件夹,即rails工程根目录
    zxh@zhangxh-ubuntu:~/app/rails$ cd blog
    zxh@zhangxh-ubuntu:~/app/rails/blog$

    3)bundle install 其实,还是调用gem,执行前,请检查gem源为淘宝源

    1
    2
    zxh@zhangxh-ubuntu:~/app/rails/blog$ bundle install
    //在rails工程根目录启动 rails server,启动成功后,另外打开一个终端,cd到该目录

    4)安装js编译器

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //选择一:使用node.js
    $ sudo apt-get install python-software-properties 
    $ sudo add-apt-repository ppa:chris-lea/node.js
    $ sudo apt-get update 
    $ sudo apt-get install nodejs
    若不安装,本机有没有js编译器,直接执行rails server,则会报错:
    zxh@zhangxh-ubuntu:~/app/rails/blog$ rails server
    //。。。。。。。。。
    //Could not find a JavaScript runtime
    //选择二:使用execjs
    $ gem install execjs

    5)此时,我们才启动server

    1
    2
    3
    4
    5
    6
    7
    8
    zxh@zhangxh-ubuntu:~/app/rails/blog$ rails server
    => Booting WEBrick
    => Rails 4.2.0 application starting in development on http://localhost:3000
    => Run `rails server -h` for more startup options
    => Ctrl-C to shutdown server
    [2015-01-11 14:21:47] INFO  WEBrick 1.3.1
    [2015-01-11 14:21:47] INFO  ruby 2.2.0 (2014-12-25) [x86_64-linux]
    [2015-01-11 14:21:47] INFO  WEBrick::HTTPServer#start: pid=12202 port=3000

       

    6)启动后,可以在http://localhost:3000查看网站


    7)然后,大家就可以按照http://guides.ruby-china.org/getting_started.html一步步完善这个rails项目

    sudo apt-get install -y build-essential openssl curl libcurl3-dev libreadline6 libreadline6-dev git zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf automake libtool imagemagick libmagickwand-dev libpcre3-dev libsqlite3-dev

  • 相关阅读:
    Sass--扩展继承
    Sass--混合宏的不足
    学习笔记47—PhotoShop技巧
    学习笔记46—如何使Word和EndNote关联
    学习笔记45—Linux压缩集
    学习笔记44—Linux下安装freesurfer
    学习笔记43—Linux安装集
    学习笔记42—Win7下安装Linux双系统
    学习笔记41—ttest误区
    学习笔记40—endnote点点滴滴
  • 原文地址:https://www.cnblogs.com/lmg-jie/p/8953717.html
Copyright © 2020-2023  润新知