「Rbenv」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→参照: == Troubleshooting == を追加) |
Kusanaginoturugi (トーク | 投稿記録) (→Troubleshooting: 一部訳出) |
||
18行目: | 18行目: | ||
rbenv はプラグインシステムで拡張することができ、rbenv の wiki には [https://github.com/sstephenson/rbenv/wiki/Plugins 便利なプラグインのリスト] が記載されています。特に ruby-build プラグインが便利です。{{ic|rbenv install}} コマンドで特定の Ruby バージョンをインストールできるようになります。AUR から {{AUR|ruby-build}} でインストールすることが可能です。 |
rbenv はプラグインシステムで拡張することができ、rbenv の wiki には [https://github.com/sstephenson/rbenv/wiki/Plugins 便利なプラグインのリスト] が記載されています。特に ruby-build プラグインが便利です。{{ic|rbenv install}} コマンドで特定の Ruby バージョンをインストールできるようになります。AUR から {{AUR|ruby-build}} でインストールすることが可能です。 |
||
+ | == トラブルシューティング == |
||
− | == Troubleshooting == |
||
+ | |||
− | |
||
=== Ruby 2.3.x === |
=== Ruby 2.3.x === |
||
+ | |||
− | |
||
+ | コンパイルする前に、必要な依存関係がすべて揃っていることを確認してください: |
||
− | Before compiling, make sure you have all the dependencies needed: |
||
+ | |||
− | |
||
pacman -S --needed base-devel libffi libyaml openssl zlib |
pacman -S --needed base-devel libffi libyaml openssl zlib |
||
+ | |||
− | |
||
+ | Ruby 2.3.x のインストールでは、以下で説明している openssl のバージョンが原因で故障する可能性があります: |
||
− | Installation of Ruby 2.3.x may break down due to openssl version described here: |
||
+ | |||
− | |
||
* https://stackoverflow.com/questions/44116005/openssl-error-installing-ruby-2-1-x-and-2-3-x-on-archlinux-with-ruby-install-rub |
* https://stackoverflow.com/questions/44116005/openssl-error-installing-ruby-2-1-x-and-2-3-x-on-archlinux-with-ruby-install-rub |
||
+ | |||
− | |
||
ossl_ssl.c:465:38: error: ‘CRYPTO_LOCK_SSL_SESSION’ undeclared |
ossl_ssl.c:465:38: error: ‘CRYPTO_LOCK_SSL_SESSION’ undeclared |
||
+ | |||
− | |
||
+ | Ruby をコンパイルする方法は以下の通りです: |
||
− | Here is a way how you can make a ruby compile: |
||
+ | |||
− | |
||
− | 1. |
+ | 1. 先ず、{{Pkg|openssl-1.0}} を [[インストール]]します。 |
+ | 2. そして、以下を実行します: |
||
− | |
||
+ | |||
− | 2. Then run: |
||
− | |
||
PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig \ |
PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig \ |
||
rbenv install 2.3.4 |
rbenv install 2.3.4 |
||
+ | |||
− | |
||
=== Ruby 2.x.x === |
=== Ruby 2.x.x === |
||
|
|
2021年7月16日 (金) 11:27時点における版
rbenv (Simple Ruby Version Management) は複数のバージョンの Ruby を簡単に切り替えることができます。シンプルかつ控えめで、一つのツールは一つのことをやるという UNIX の伝統に従っています。
同じ目的を持ったツールとして RVM が存在します。
インストール
プラグイン
rbenv はプラグインシステムで拡張することができ、rbenv の wiki には 便利なプラグインのリスト が記載されています。特に ruby-build プラグインが便利です。rbenv install
コマンドで特定の Ruby バージョンをインストールできるようになります。AUR から ruby-buildAUR でインストールすることが可能です。
トラブルシューティング
Ruby 2.3.x
コンパイルする前に、必要な依存関係がすべて揃っていることを確認してください:
pacman -S --needed base-devel libffi libyaml openssl zlib
Ruby 2.3.x のインストールでは、以下で説明している openssl のバージョンが原因で故障する可能性があります:
ossl_ssl.c:465:38: error: ‘CRYPTO_LOCK_SSL_SESSION’ undeclared
Ruby をコンパイルする方法は以下の通りです:
1. 先ず、openssl-1.0 を インストールします。 2. そして、以下を実行します:
PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig \ rbenv install 2.3.4
Ruby 2.x.x
Installation of Ruby 2.0.0, 2.1.4, 2.1.6, 2.1.7, 2.2.2 and 2.2.3 may show this error
ossl_ssl.c:141:27: error: ‘SSLv3_method’ undeclared here (not in a function)
This can be solved using the patch as described here
curl -fsSL https://gist.github.com/mislav/055441129184a1512bb5.txt | PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig rbenv install --patch 2.2.3
Ruby 1.9.3
Installation of Ruby 1.9.3 may show the same error:
ossl_ssl.c:116:27: error: ‘SSLv3_method’ undeclared here (not in a function)
This can be solved by using the patch as described here
curl -fsSL https://gist.githubusercontent.com/anonymous/679228bc324d6fdd3074.txt | rbenv install --patch 1.9.3-p448
If above was not enough you can install openssl-1.0 and gcc6 and try:
curl -fsSL https://gist.githubusercontent.com/anonymous/679228bc324d6fdd3074.txt | CC=/usr/bin/gcc-6 PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig rbenv install --patch 1.9.3-p551