EBViewが起動しなくなった

Linux向けのフリーのEPWINGビューアのEBViewですが,もう数年メンテナンスされていません。そのうち動かなくなるのでは・・・という不安を抱えておりましたが,ついにその日が来たか・・・。

先日EBViewを起動させるも立ち上がらず。あれ?と思ってターミナルから起動させてみると,

$ ebview
ebview: error while loading shared libraries: libnsl.so.2: cannot open shared object file: No such file or directory

うわぁ,こりゃついに来たね,ご臨終の日が,と思いました。とても自分ではなんとかできるとも思えませんでした。

とりあえず,調べてみると,ここ最近,同じエラーを食らってアプリが動かないとの投稿,バグレポートが多数。よくはわからんのですが,どうもlibnsl.soというsymlinkのリンク先が最近のアップデートでlibnsl.so.3に変わった? なので,アップデートしてもう一回ビルドすれば動く,というような記載が。

それでEBViewをもう一回AURからyayで再インストールしましたが,同じエラーが・・・。どうも,皆さんは,目当てのアプリの依存パッケージがlibnsl.so.2を必要としていてエラーを食らっていたのが,その依存パッケージがアップデートされたことによってエラーがでなくなっている臭かった。

で,これを発見して試してみたら,またEBView立ち上がりました。

github.com

libnsl-2.33.soへのsymlinkをlibnsl.so.2として作りなさい,ということでした。

lddというコマンドは始めてみましたが,共有ライブラリへの依存関係を示すコマンドだ荘です。これをebviewで実行してみると,

$ ldd /usr/bin/ebview
    ・・・・・
    libnsl.so.2 => not found
    ・・・・・

ということで,思いっきりnot found。

なので,

$ ls /usr/lib/libnsl*
/usr/lib/libnsl-2.33.so  /usr/lib/libnsl.so.1  /usr/lib/libnsl.so.3.0.0
/usr/lib/libnsl.so       /usr/lib/libnsl.so.3
$ sudo ln -s /usr/lib/libnsl-2.33.so /usr/lib/libnsl.so.2

とやってみたら,無事起動しました。ほっ。

EBView,しばし延命。