• ruby安装指南


    ruby安装指南

    最近搞redis监控,像redis-stat或者redis-browser。

    均有通过ruby方式安装的方法。

    而ruby的安装有两种方式:

    1.通过yum安装

    2.通过编译安装

    通过yum安装

    yum install ruby    
    yum install rubygems

    CentOS Linux 7安装后:

    [root@node1 ~]# ruby -v
    ruby 2.0.0p648 (2015-12-16) [x86_64-linux]
    [root@node1 ~]# gem -v
    2.0.14.1

     通过yum安装的ruby没有bundle命令。

    通过编译安装

    安装包下载地址:

    https://www.ruby-lang.org/zh_cn/downloads/
    https://www.ruby-lang.org/en/downloads/

    配置环境变量

    vi ~/.bash_profile
        PATH=$PATH:$HOME/bin:/opt/redis/bin:/usr/local/ruby/bin

    安装依赖包

    yum -y install zlib zlib-devel

      

    解压并编译安装

    tar -zxvf ruby-3.0.2.tar.gz
    cd /soft/ruby-3.0.2
    ./configure --prefix=/usr/local/ruby
    make make install echo $?
    
    

    ##--prefix是将ruby安装到指定目录,也可以自定义

    echo $?输出0代表正常。

    ruby的扩展库zlib安装。

    cd /soft/ruby-3.0.2/ext/zlib
    ruby ./extconf.rb
    make
    make install

    若是缺少zlib,在make步骤会报错:

    [root@node2 zlib]# ruby ./extconf.rb
    checking for deflateReset() in -lz... no
    checking for deflateReset() in -llibz... no
    checking for deflateReset() in -lzlib1... no
    checking for deflateReset() in -lzlib... no
    checking for deflateReset() in -lzdll... no
    checking for deflateReset() in -lzlibwapi... no
    creating Makefile

      

    我的环境CentOS Linux 7安装ruby-3.0.2.tar.gz在如下步骤有openssh的问题。

    ruby的扩展库openssl安装。

    cd /soft/ruby-3.0.2/ext/openssl/
    ruby ./extconf.rb 
    make
    make install
    View Code
    [root@redis zlib]# cd /soft/ruby-3.0.2/ext/openssl/
    [root@redis openssl]# ruby ./extconf.rb 
    checking for t_open() in -lnsl... no
    checking for socket() in -lsocket... no
    checking for openssl/ssl.h... no
    ./extconf.rb:99:in `<main>': OpenSSL library could not be found. You might want to use --with-openssl-dir=<dir> option to specify the prefix where OpenSSL is installed. (RuntimeError)

    升级openssl和openssh重新执行步骤即可。

    安装成功后:

    [root@node2 ~]# ruby -v
    ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux]
    [root@node2 ~]# gem -v
    3.2.22

    卸载

    yum remove ruby    
    yum remove rubygems

    或者(通过编译的方式)

    for i in `gem list --no-versions`; do gem uninstall -aIx $i; done  ##不确定是否需要做
    [root@node2 ~]# cd /soft/ruby-3.0.2 make uninstall
  • 相关阅读:
    很实用的html meta标签实现页面跳转
    oracle 实例名和服务名以及数据库名区别
    Oracle 创建 DBLink 的方法
    Java (六):java中Math常用方法
    Java (四):String,StringBuilder,StringBuffer三者的区别
    ROS Learning-001 安装 ROS indigo
    Windows cmd 将命令(/指令)写到一个文件里,直接运行这个文件。提高工作效率
    Blender 基础 骨架-02 骨架的各种呈现方式
    Blender 基础 骨架 01
    Python 解决 :NameError: name 'reload' is not defined 问题
  • 原文地址:https://www.cnblogs.com/PiscesCanon/p/15080381.html
Copyright © 2020-2023  润新知