前川さん、大城さん、阿部さん
沢山の親切な情報をありがとうございました。おかげさまで問題をフィックスできました。
最初に rbenvで別のRubyをインストールしようとしたら、謎のエラーでストップ
cannot load such file -- psych
こいつに悩まされました。本家から Ruby
のtarballを落としてビルドしようとしても
同様です。解決は断念。
そこで、現行の 3.0.2と rbenvを切ってしまうことにしました。
sudo apt purge ruby rbenv ruby-build
rm -rf ~/.rbenv
道具をインストール
sudo apt install gcc make
sudo apt install libssl-dev zlib1g-dev
|gitからrbenvをインストール git clone --depth 1
~/.rbenv 少し作業して rbenvをmake
インストールできるバージョンを探す rbenv install --list-all | lv #
3.1.2がいいかな rbenv install 3.1.2 rbenv global 3.1.2
これでちゃんと動くRubyが入手できました。もっとスマートにやれたかも
しれません。 小波秀雄 |
On 2023/10/31 9:46, 前川 享仁 via ruby-list wrote:
------------------------------------------------------------------------
*From:* Yasuhiro ABE via ruby-list <ruby-list(a)ml.ruby-lang.org>
*Sent:* Tuesday, October 31, 2023 12:43:21 AM
*To:* 大城 尚紀 via ruby-list <ruby-list(a)ml.ruby-lang.org>
*Cc:* Yasuhiro ABE <yasu(a)yasundial.org>
*Subject:* [ruby-list:51012] Re: Readline.readline の動作について
こんにちは、阿部といいます。
昨日メールを登録していないアカウントから送信してしまい弾かれて
しまったようです。重複して受け取った方がいれば申し訳ありません。
Ubuntu 22.04のruby packageはibeditとリンクしていたので、
ruby-3.0.6.tar.gz から --enable-libedit付きでコンパイルしてみた
ところ再現しました。
Ubuntu 23.10のruby packageもlibeditを使用していますが、再現しません。
ruby-3.2.2.tar.gz の ext/readline/readline.c と比較すると
prepare_readline();
行の有無だけが違うようでしたので原因は
3.0系のコードが古いことだろうと思います。
Ubuntu 22.04を使う前提であれば、snapで配布されているrubyをインストール
(snap
install --classic ruby) して、/snap/bin/ruby
を使うのが良いかもしれません。
On 2023/10/31 9:20, 大城 尚紀 via ruby-list wrote:
こんにちは。興味があったので試してみました。別OSですが、AlmaLinux 9.2だ
とRuby 3.0.4でreadlineが使えるようでした。
ご参考までにお送りします。
$ cat /etc/redhat-release
AlmaLinux release 9.2 (Turquoise Kodkod)
$ ruby -v -r readline -e 'puts "readline #{Readline::VERSION}"'
ruby 3.0.4p208 (2022-04-12 revision 3fa771dded) [x86_64-linux]
readline 8.1
$ ruby readline-test.rb
項目を選んでEnter
aaa
bbb
ccc
dddd
ee
dddd
"dddd"
2023年10月30日(月) 11:35 konami via ruby-list
<ruby-list(a)ml.ruby-lang.org <mailto:ruby-list@ml.ruby-lang.org
<mailto:ruby-list@ml.ruby-lang.org>>>:
小川さん
レポートをありがとうございます。問題の切り分けができて助かります。
OSはどちらも Ubuntu 22.04.3 LTS ですので謎が深まりますが,
仕事が詰まっていますので,時間ができたら調べてみることにします。
小波秀雄
On 2023/10/30 11:00, OGAWA KenIchi via ruby-list wrote:
小川と申します。
> Ruby 2.7 と 3.0 の仕様変更でこうなっているのかどうか。2.7
> でできたことを3.0で可能にする方法
> がないのかと気になっています。ご存知の方がおられたら教えていただ
けるとうれしいです。
私の手元の環境では、Rubyの3.0.2を使って示されていたコードが正しく
動作し
ました。なので、仕様変更というわけではないと思います。
原因はわかりませんが、システムの libreadline.so に問題がある可能
性はある
のかなと思いました。
--
----
Yasuhiro ABE
e-mail: yasu(a)yasundial.org, yadiary(a)gmail.com
twitter:
http://twitter.com/YasuhiroABE