zoukankan      html  css  js  c++  java
  • ruby学习之路(一)

    学习ruby最好的方法就是下载源码包,里面带有sample和test,是入门学习的最好实例。

    我下载的是2.1.0版本,首先./configure,然后make,sudo make install。从common.mk文件中可看出,包含有两类test:test和test-all,test主要是对sample/test.rb进行测试,test-all用于对test文件夹中的用例进行测试。

    在make test-all过程中,提示未找到zlib,需要通过gem下载,下面就复习一下gem的语法

    gem相关命令使用 
    
    1.显示gem的帮助和版本 
    gem –h/--help 
    #显示gem的帮助 
    
    gem –v /--version 
    #显示gem的版本号 
    2. 列出远程库的所有可用软件 
    gem query --remote         
    # 短命令: gem q -r 
    你可以看到一个关于远程主机上所有软件的详细列表。 
    3. 查找远程主机上的特定软件 
    gem query --remote --name-matches doom 
    # 短命令: gem q -rn doom 
    你将看到一个匹配doom的详细列表。 
    
    gem list –remote --d 
    #用子命令list列出远程安装的gems 
    4.1 安装一个远程软件 
    gem install --remote progressbar 
    # 短命令: gem i -r progressbar –y 
    远程安装progressbar到你的主机,-y的意思是无条件的安装依赖包 
    
    gem install rails –remote 
    #从远程服务器安装rails包,其中rails可以被替换成任何一个gem list –remote –d中显示的软件包 
    
    4.2 安装软件的特定版本 
    gem ins -r progressbar-0.0.3 
    安装progressbar的0.0.3版本 
    
    gem ins -r progressbar --version '> 0.0.1' 
    将安装progressbar的大于0.0.1的最新版本 
    5. 查看一个已安装的软件 
    gem specification progressbar 
    # 短命令: gem spec progressbar 
    
    你会看到关于已安装的包progressbar的详细信息。 
    6. 卸载一个软件 
    gem uninstall progressbar 
    卸载了progressbar 
    7.1 将所有安装的软件列表 
    gem query --local 
    # 短命令: 'gem q -l' 
    7.2 查看某个已安装的软件 
    gem query --local --name-matches doom 
    # 短命令: 'gem q -ln doom' 
    或:gem list --local 
    
    7.3 需要注意的安装方法 
    gem ins rake   
    
    会先尝试本地安装,如果本地没有就会远程下载。 
    gem list -b ^C 
    
    列出本地和远程的以C开头的软件 
    
    8. 浏览所有安装的软件和它们的说明文档 
    gem_server 
    会生成一个web服务器,打开http://localhost:8808 
    
    就可以看到一个html详细列出了你需要的信息。 
    
    9. 使用配置文件 
    gem: --gen-rdoc --run-tests 
    如果你想安装软件后总是生成它们的文档和运行单元测试,你可以在配制文件里写上相关的命令,配置文件名是.gemrc,在主目录里。 
    
    10. 构建gem包 
    gem build package.gemspec 
    #运用bulid子命令构建gem包

    参考自园中麦子加菲的博客

    下载gem之前,首先将gem的源更换为淘宝网,步骤如下

    $ gem sources --remove https://rubygems.org/
    $ gem sources -a http://ruby.taobao.org/
    $ gem sources -l
    *** CURRENT SOURCES ***
    
    http://ruby.taobao.org

    当执行到gem sources -a http://ruby.taobao.org/时报错:
    ERROR:  While executing gem ... (NameError)
        uninitialized constant Gem::RemoteFetcher::Zlib
    原因是下载列表时需要zlib库,而ruby中没有带这个库,想将源换回之前的库gem sources -a https://rubygems.org/又报错:
    ERROR:  While executing gem ... (Gem::Exception)
        Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources

    因此必须安装zlib,从zlib.net网站下载源码包,编译安装后进入ruby源码文件夹,安装ruby自身提供的zlib包

    $cd ext/zlib
    $ruby ./extconf.rb
    $make
    $make install

    然后再执行gem sources -a http://ruby.taobao.org/,源更改成功

  • 相关阅读:
    jquery tmpl 模板引擎 取小数点 三目运算
    ztree 根据id选中某一点且触发当前点的click事件
    rgb(123,25,62)拆分
    html5 vedio
    同一个dom上加单击事件和双击事件的冲突解决办法,双击事件方法进不去
    axios拦截器
    foreach、for、for in循环方式
    echarts markline 不同颜色
    组件里传值到父级
    vue路由钩子拦截器beforeEach和afterEach及页面路由变化路由监听
  • 原文地址:https://www.cnblogs.com/netbuddy/p/3501147.html
Copyright © 2011-2022 走看看