1月17日にManjaro Linuxのstableブランチの定例アップデートがあり(
公式アナウンス)、パッケージとしては、Pythonが3.6になったり、Rubyが2.4になったりしました。そのアップデートの結果、mikutter が完全に動かなくなってしまいました。terminal上でコマンドラインで動かそうとすると、「libruby.so.2.3がロードできません。」という内容のエラーメッセージが出ました。
そこで、一旦rubyそのものをシステムからアンインストールして、rbenv でruby環境を構築し、mikutterをソースからビルドしようとしました。rbenv によるruby 環境の構築についてはこの
記事が分かりやすかったです。
mikutter のソースを解凍したディレクトリに入り、
bundle install --path vendor/bundle
と入力すると、mikutterのビルドが始まりますが、ruby 2.4の場合、
compiling rbgobj_type.c
rbgobj_type.c: 関数 ‘init_typemap’ 内:
rbgobj_type.c:403:42: エラー: ‘rb_cFixnum’ が宣言されていません (この関数内での最初の使用)
という内容のエラーが出て、先に進めなくなりました。
結局、rbenvでruby 2.3 環境を構築し、その環境でmikutterをソースからビルドしますと、うまく起動するようになりました。
なお、使用している人はほとんどいないと思いますが、Manjaro JPのリポジトリ(local-repo)からmikutter関連は一旦消していますので御了承のほどよろしくお願いします。
PR