Ruby简介

  Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp 语言。由 Ruby 语言本身还发展出了JRuby(Java平台)、IronRuby(.NET平台)等其他平台的 Ruby 语言替代品。Ruby的作者于1993年2月24日开始编写Ruby,直至1995年12月才正式公开发布于fj(新闻组)。因为Perl发音与6月诞生石pearl(珍珠)相同,因此Ruby以7月诞生石ruby(红宝石)命名

Ruby安装

  环境:Linux(CentOS 7.4)

  1、下载:http://www.ruby-lang.org/,本例下载版本:ruby-2.5.1.tar.gz

tar -zxvf ruby-2.5.1.tar.gz
mkdir /data/soft/ruby-2.5.1

    

编译ruby源代码 ruby编译安装_ruby

./configure --prefix=/data/soft/ruby-2.5.1

    

编译ruby源代码 ruby编译安装_编译ruby源代码_02

make
make install

  7、配置环境变量

   

# 2018-08-20
    export RUBY_HOME=/data/soft/ruby-2.5.1
    export PATH=$RUBY_HOME/bin:$PATH

    

编译ruby源代码 ruby编译安装_Ruby_03

ruby -v

    

编译ruby源代码 ruby编译安装_Linux_04

  9、ruby 与 zlib,在使用gem install 指令时,报错:cannot load such file -- zlib,需要安装zlib依赖包

    

编译ruby源代码 ruby编译安装_Linux_05

    解决:参考【Linux】zlib安装。

cd  /data/download/ruby-2.5.1

    

编译ruby源代码 ruby编译安装_Ruby_06

cd ext/zlib
ruby extconf.rb --with-zlib-include=/data/soft/zlib-1.2.11/include/ --with-zlib-lib=/data/soft/zlib-1.2.11/lib

    

编译ruby源代码 ruby编译安装_编译ruby源代码_07

make 
make: *** No rule to make target `/include/ruby.h', needed by `zlib.o'.  Stop

    

编译ruby源代码 ruby编译安装_redis_08

    解决方式:修改目录下的Makefile文件,将zlib.o: $(top_srcdir)/include/ruby.h 改为zlib.o: ../../include/ruby.h 

    

编译ruby源代码 ruby编译安装_Linux_09

make

    

编译ruby源代码 ruby编译安装_Ruby_10

make install

    

编译ruby源代码 ruby编译安装_Ruby_11


  10、ruby 与 openssl,以下部分是安装redis接口的

    安装redis接口,命令:gem install redis    错误:Unable to require openssl, install OpenSSL and rebuild Ruby (preferred) or use non-HTTPS sources

    

编译ruby源代码 ruby编译安装_Ruby_12

      解决安装:openssl,参考:【Linux】OpenSSL 安装

cd ext/openssl
ruby extconf.rb --with-openssl-include=/data/soft/openssl-1.1.0/include/ --with-openssl-lib=/data/soft/openssl-1.1.0/lib

make

    错误:make: *** No rule to make target `/include/ruby.h', needed by `ossl.o'.  Stop.

    解决:修改目录下的Makefile文件,将所有的:$(top_srcdir)/include/ruby.h 改为 ../../include/ruby.h 

make
make install
gem install redis

    

编译ruby源代码 ruby编译安装_redis_13