广告位联系
返回顶部
分享到

CentOS7下安装Ruby3.2.4的实施路径介绍

ruby 来源:互联网 作者:佚名 发布时间:2024-12-01 09:12:41 人浏览
摘要

一、CentOS版本 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [user@zt ~]$ cat /etc/os-release NAME=CentOS Linux VERSION=7 (Core) ID=centos ID_LIKE=rhel fedora VERSION_ID=7 PRETTY_NAME=CentOS Linux 7 (Core) ANSI_COLOR=0;31 CPE_NAME=cpe:/o:centos:centos:7 HO

一、CentOS版本

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

[user@zt ~]$ cat /etc/os-release

NAME="CentOS Linux"

VERSION="7 (Core)"

ID="centos"

ID_LIKE="rhel fedora"

VERSION_ID="7"

PRETTY_NAME="CentOS Linux 7 (Core)"

ANSI_COLOR="0;31"

CPE_NAME="cpe:/o:centos:centos:7"

HOME_URL="https://www.centos.org/"

BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"

CENTOS_MANTISBT_PROJECT_VERSION="7"

REDHAT_SUPPORT_PRODUCT="centos"

REDHAT_SUPPORT_PRODUCT_VERSION="7"

二、先安装RVM

RVM是一个linux下的Ruby的多版本管理工具,可以维护多个Ruby版本,切换版本。对于开发Ruby应用程序比较友好。还有个优点就是不需要梯子,对于国内用户友好。

安装GPG的key,用于身份验证

1

$ gpg2 --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

安装RVM最新稳定版本

1

$ \curl -sSL https://get.rvm.io | bash -s stable

三、安装Ruby的前置依赖

更新gcc版本,默认为4.8.5版本,最好升级到7以上版本,我们这里升级到了9版本,升级gcc版需要先更新yum源

1

$ yum install centos-release-scl -y

安装完成后在 /etc/yum.repos.d 目录下会出现 CentOS-SCLo-scl.repo 和 CentOS-SCLo-scl-rh.repo 两个文件,安装后源默认启用,但是坑也就是在这里被埋下了。CentOS 7 最晚在 2024年6月30后 停止更新维护,在此之前在 CentOS 7 可以通过 yum 直接安装 SCL 源基本都是可以正常使用的。这个时候需要更新源的地址:

1

$ vi /etc/yum.repos.d/CentOS-SCLo-scl.repo

修改此部分的baseurl为阿里云源

1

2

3

4

5

6

7

[centos-sclo-sclo]

name=CentOS-7 - SCLo sclo

baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/sclo/

# mirrorlist=http://mirrorlist.centos.org?arch=$basearch&release=7&repo=sclo-sclo

gpgcheck=0

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

1

$ vi /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

修改此部分的baseurl为阿里云源

1

2

3

4

5

6

7

[centos-sclo-rh]

name=CentOS-7 - SCLo rh

baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/

# mirrorlist=http://mirrorlist.centos.org?arch=$basearch&release=7&repo=sclo-rh

gpgcheck=0

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

最后刷新缓存

1

2

3

yum repolist

yum clean all

yum makecache

正式升级gcc版本

1

yum install devtoolset-9-gcc* -y

显示如下即安装成功:

Installed:
  devtoolset-9-gcc.x86_64 0:9.3.1-2.2.el7 devtoolset-9-gcc-c++.x86_64 0:9.3.1-2.2.el7 devtoolset-9-gcc-gdb-plugin.x86_64 0:9.3.1-2.2.el7 devtoolset-9-gcc-gfortran.x86_64 0:9.3.1-2.2.el7 devtoolset-9-gcc-plugin-devel.x86_64 0:9.3.1-2.2.el7

Dependency Installed:
  audit-libs-python.x86_64 0:2.8.5-4.el7     checkpolicy.x86_64 0:2.5-8.el7     devtoolset-9-binutils.x86_64 0:2.32-16.el7    devtoolset-9-libquadmath-devel.x86_64 0:9.3.1-2.2.el7    devtoolset-9-libstdc++-devel.x86_64 0:9.3.1-2.2.el7   
  devtoolset-9-runtime.x86_64 0:9.1-0.el7    gmp-devel.x86_64 1:6.0.0-15.el7    libgfortran5.x86_64 0:8.3.1-2.1.1.el7         libmpc-devel.x86_64 0:1.0.1-3.el7                        libquadmath.x86_64 0:4.8.5-44.el7                     
  libsemanage-python.x86_64 0:2.5-14.el7     mpfr-devel.x86_64 0:3.1.1-4.el7    policycoreutils-python.x86_64 0:2.5-34.el7    python-IPy.noarch 0:0.75-6.el7                           setools-libs.x86_64 0:3.3.8-4.el7                     

Complete!

启用新版gcc

1

scl enable devtoolset-9 bash

查看gcc版本:

1

2

3

4

5

6

7

8

gcc -v

Using built-in specs.

COLLECT_GCC=gcc

COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/lto-wrapper

Target: x86_64-redhat-linux

Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-9/root/usr --mandir=/opt/rh/devtoolset-9/root/usr/share/man --infodir=/opt/rh/devtoolset-9/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-9.3.1-20200408/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux

Thread model: posix

gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)

使当前的终端立即生效:

1

source /opt/rh/devtoolset-9/enable

四、安装指定版本的Ruby

1

CC=/opt/rh/devtoolset-9/root/usr/bin/gcc rvm install 3.2.4

显示如下即表示安装成功:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

ruby-3.2.4 - #removing src/ruby-3.2.4..

Searching for binary rubies, this might take some time.

No binary rubies available for: centos/7/x86_64/ruby-3.2.4.

Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.

Checking requirements for centos.

Requirements installation successful.

Installing Ruby from source to: /usr/local/rvm/rubies/ruby-3.2.4, this may take a while depending on your cpu(s)...

ruby-3.2.4 - #downloading ruby-3.2.4, this may take a while depending on your connection...

ruby-3.2.4 - #extracting ruby-3.2.4 to /usr/local/rvm/src/ruby-3.2.4.....

ruby-3.2.4 - #configuring..................................................................

ruby-3.2.4 - #post-configuration..

ruby-3.2.4 - #compiling...................................................................................................

ruby-3.2.4 - #installing.....................................

ruby-3.2.4 - #making binaries executable...

Installed rubygems 3.4.19 is newer than 3.0.9 provided with installed ruby, skipping installation, use --force to force installation.

ruby-3.2.4 - #gemset created /usr/local/rvm/gems/ruby-3.2.4@global

ruby-3.2.4 - #importing gemset /usr/local/rvm/gemsets/global.gems................................................................

ruby-3.2.4 - #generating global wrappers........

ruby-3.2.4 - #gemset created /usr/local/rvm/gems/ruby-3.2.4

ruby-3.2.4 - #importing gemsetfile /usr/local/rvm/gemsets/default.gems evaluated to empty gem list

ruby-3.2.4 - #generating default wrappers........

ruby-3.2.4 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake).

Install of ruby-3.2.4 - #complete

Ruby was built without documentation, to build it run: rvm docs generate-ri

查看RVM使用的当前Ruby版本

1

2

3

4

5

rvm list

=* ruby-3.2.4 [ x86_64 ]

# => - current

# =* - current && default

#  * - default


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • ruby中 %W{}和%w{}的使用案例介绍
    ruby中 %W{}和%w{}的使用 %w{}是Ruby中的一种快捷方式,用于创建一个以空格分隔的字符串数组。例如,%w{apple banana cherry}将创建一个包含3个字符
  • Ruby中Rack中间件使用介绍
    在 Ruby 中,Rack 是一个 Web 服务器接口,它允许开发者使用统一的方式构建 Web 应用程序。Rack 中间件是 Rack 框架的一个核心概念,它可以在请
  • Ruby语言建立Web服务器的过程介绍

    Ruby语言建立Web服务器的过程介绍
    这次选择的Web服务器是Nginx,Nginx非常适合处理静态资源,如图片、CSS和JS文件,通过减轻应用服务器的负担,Nginx使得Ruby on Rails应用能够更高
  • Ruby Dir类和常用方法的介绍
    Ruby Dir 类和方法 Ruby 中的Dir类提供了用于处理目录的各种方法。这些方法允许您列出目录内容、更改当前工作目录、创建和删除目录等。本
  • CentOS7下安装Ruby3.2.4的实施路径介绍
    一、CentOS版本 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [user@zt ~]$ cat /etc/os-release NAME=CentOS Linux VERSION=7 (Core) ID=centos ID_LIKE=rhel fedora VERSION_ID=7 PRETTY_NAME=Cen
  • Ruby解析处理YAML和json格式数据
    Ruby处理YAML Ruby的标准库YAML基于Psych:https://ruby-doc.org/stdlib-2.6.2/libdoc/psych/rdoc/Psych.html require yaml之后,为大多数的基本数据类型都提供了to_
  • 安装Ruby和安装Rails详细步骤介绍

    安装Ruby和安装Rails详细步骤介绍
    rbenv安装Ruby rbenv可以管理多个版本的ruby。可以分为3种范围(或者说不同生效作用域)的版本: local版:本地,针对各项目范围(只在某个目录下
  • Ruby使用GDBM操作DBM数据存储方法实例介绍
    DBM简介 dbm(database manager) 是使用本地文件来存储数据的数据库,基于Key -Value对数据进行存储、读取,且有些dbm的实现( berkeley db)还支持BTree索
  • Ruby变量的介绍
    变量是持有可被任何程序使用的任何数据的存储位置。 Ruby 支持五种类型的变量。 一般小写字母、下划线开头:变量(Variable)。 $开头:全
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计