プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • Ruby
  • CentOS6に、Rubyをインストールする。(Hello Worldまで)
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

CentOS6に、Rubyをインストールする。(Hello Worldまで)

06.15

  • miyabisan2
  • コメントを書く

この記事は3分で読めます

Rubyの開発は、Windowsでも可能ですが、やはり下記の理由でLinux上での開発がおすすめです。

  • Windowsよりも、Linuxでの情報が多い。
  • Rubyは基本的にLinux上で動作させることで作られているため、環境面で差異が出来る可能性がある。

今であれば、VMware Playerや、VirtualBox、Docker、Vagrant等環境面でのLinuxを開発しやすい選択肢は増えてきているので、使いやすいツールを選びましょう。

前提

Linuxでは、Rubyはデフォルトでインストールされているか、yum(yum install ruby)でインストールすることができます。

しかし、OS標準のrubyの場合は、最新版ではないことが多いです。(yumで最新化しても、OSにおける最新版になるだけです。)

最新版をインストールするには、下記の二つの方法があります。

  • 手動でrubyをインストールする。
  • rbenvやRVMといったRuby専用のバージョン切り替えツールを使う。

ツールを使った場合は、一つの環境に様々なバージョンのrubyをインストールして切り替えることができるので大変便利です。とりあえず今回は、手動でrubyをインストールする方法をご紹介します。

Rubyのインストール手順

1.開発ツールのインストール

rubyのインストールに必要なgcc等の開発ツールをインストールします。

1
yum -y groupinstall "Development tools"

インストール状況によりますが、このインストールには結構時間がかかります。

下記のようなメッセージが出たら完了です。

2.各種ライブラリのインストール(OpenSSL、zlib等)

1
yum -y install openssl-devel zlib-devel

下記のようなメッセージが出たら完了です。

3.rubyのダウンロード

rubyをダウンロードします。(バージョンは、2018年6月15日時点で最新の2.5.1とします。)

1
2
cd /usr/local/src/
wget --no-check-certificate https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.1.tar.gz

4.gemのダウンロード

次に、gemをダウンロードします。

gemというのは、Rubyの標準ライブラリ以外の「外部ライブラリ」のことです。

1
wget --no-check-certificate https://rubygems.org/rubygems/rubygems-2.5.1.tgz

5.Rubyをビルドします。

1
2
3
tar xvfz ruby-2.5.1.tar.gz
cd ruby-2.5.1
./configure && make && make install

上記のように表示されたらインストール成功です。

私の環境では、ビルド中にエラーが発生したので、下記のように対応しました。

RubyをCentOS6にビルドしていた(configureコマンド)際に下記のようなメッセージが大量に出力されてしまいました。

「make: Warning: File `common.mk' has modification time 1.8e+06 s in the future」

原因

どうやら、システム時刻の設定が同期されていなかったために発生していたようです。

https://blog.csdn.net/goodlixueyong/article/details/6582263

上記ページを参考にしました。

対策

下記のページを参考にして、時刻を同期したらエラーが出なくなりました。

https://qiita.com/tsu_nera/items/9be676b04b190e45b281

6.gemをビルドします。

次は、gemをインストールします。

1
2
3
4
cd ../
tar xvfz rubygems-2.5.1.tgz
cd rubygems-2.5.1
ruby setup.rb

ただ、下記のエラーが出てしまいました。

[root@localhost rubygems-2.5.1]# ruby setup.rb
RubyGems 2.5.1 installed
ERROR: While executing gem ... (Gem::DocumentError)
RDoc is not installed: no such file to load -- rdoc/rdoc

どうやら、rdocというパッケージがないためにgemのセットアップができないようです。

下記のようにインストールします。

1
yum install rdoc

再度、gemをセットアップします。

1
ruby setup.rb

gemを最新版にアップデートしておきます。(すみません、インストール段階で最新版を取ってくるべきでした。)

1
gem update --system

7.Rubyのインストールディレクトリにパスを通します。

また、ログイン時にパスが適用されるようにしておきます。

(ユーザーのホームディレクトリ)/.bash_profileのPATHに「/usr/local/bin」を追加します。

1
2
3
4
5
6
7
8
9
10
11
12
# .bash_profile
 
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
 
# User specific environment and startup programs
 
PATH=$PATH:$HOME/bin:<strong>/usr/local/bin★これを追加</strong>
 
export PATH

一旦ログアウトして、ログインしなおしましょう。(パスが適用されます。)

下記のコマンドを打つと、先ほどビルドしたrubyのバージョンが表示されます。

1
ruby -v

プログラム(Hello World)を実行してみる。

それではためしに簡単なプログラムを実行してみましょう。

下記のようなプログラムファイルを用意します。

helloworld.rb

1
puts 'Hello World!'

実行結果

「ruby 作成したプログラム」と指定するだけでプログラムを実行させることができます。

スポンサーリンク
  • 2018 06.15
  • miyabisan2
  • コメントを書く
  • Ruby
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2019 12.17

    【Ruby】定数、変数について

  2. 2019 12.01

    【Rspec】itのマッチャの種類(カスタムマッチャ、aggregate_failuresなども)

  3. 2019 12.17

    【Ruby】データ型クラス

  4. 2019 11.17

    【Ruby】日付や時刻を扱うクラス

  5. 2019 11.16

    【Ruby】メソッド、yield、Procオブジェクトに関する知識

  6. 2018 06.16

    【Ruby】Rubyの基本、正規表現の便利ツール(Rubular)

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【Struts】「1系」と「2系」の違い、動作の仕組み…

【Ruby】「オブジェクト」、「クラス」の扱い方、継承…

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • cursor
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • gRPC
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー