pkg・ports アップデート関連 - その他一般 - libp11 2.5.2 3.4.2
- 1. 概要
- 2. きっかけ
- 3. libp11 make
- 4. 苦しまぎれ
- 5. 解決
1. 概要
これが、発生したのは、2020年8月25日でありました。
どうやって「libp11-2.5.2」を「libp11-3.4.2」にアップグレードするかという話でなく、「libp11-3.4.2」を「libp11-2.5.2」に見せかけるにはどうしたらいいかという話なのです。
2. きっかけ
そもそもは、メールの受信がおかしくなっていたのです。
メール受信しながら、ログを見てみると
Aug 25 07:55:44 ns imapd-ssl: /usr/local/lib/libp11-kit.so.0: version LIBP11_KIT_1.0 required by /usr/local/lib/libgnutls.so.30 not defined
なんだか、「libp11-kit.so」がないために、「imapd-ssl」がこけているように見えます。
とりあえず、「imapd-ssl」を再インストールしようとして
cd /usr/ports/mail/courier-imap
make clean
make
したものの、これは、ログを取り損ないましたが、「libp11」が原因で、「make」が失敗します。
3. libp11 make
しょうがない。
「libp11」を「make」しようとしたら
$ cd /usr/ports/security/libp11
$ make clean
$ make
$ make install
===> Installing for libp11-0.4.10
===> Checking if libp11 is already installed
===> Registering installation for libp11-0.4.10
pkg-static: Unable to access file /usr/ports/security/libp11/work/stage/usr/local/lib/libp11.so.2:No such file or directory
pkg-static: Unable to access file /usr/ports/security/libp11/work/stage/usr/local/lib/libp11.so.2.5.2:No such file or directory
*** Error code 74
Stop.
make[1]: stopped in /usr/ports/security/libp11
*** Error code 1
Stop.
make: stopped in /usr/ports/security/libp11
やや、なんじゃこれは、インストールしようとして、「libp11.so.2」と「libp11.so.2.5.2」がないので、インストールに失敗しているようです。
実際にどうなっているのか見てみます。
$ cd /usr/ports/security/libp11/work/stage/usr/local/lib/
$ ls
. .. debug engines libp11.a libp11.so libp11.so.3 libp11.so.3.4.2 X11
うむ。ない。
4. 苦しまぎれ
まぁ、理解できたのは、できあがっているのは、「libp11.so.3」「libp11.so.3.4.2」なのに「libp11.so.2」「libp11.so.2.5.2」を持っていこうとして、インストールに失敗しておるということです。
これは、メンテナの方に依頼して、手を施してもらうに限るのですが、いかんせん、英語が話せないので、それはあきらめて。
次善の策として「Makefile」をいじればいいのですが、これも面倒で、わたしにはできそうもない。
苦しまぎれの策が
cd /usr/ports/security/libp11/work/stage/usr/local/lib/
cp libp11.so.3.4.2 libp11.so.2.5.2
ln -s libp11.so.2 libp11.so.2.5.2
ln -s libp11.so.2.5.2 libp11.so.2
つまり、「libp11.so.3」「libp11.so.3.4.2」を「libp11.so.2」「libp11.so.2.5.2」に見せかけちゃおうって寸法です。
今度は、
cd /usr/ports/security/libp11
make install
これが、すんなり通りました。
5. 解決
結局、「gnutls」も作り直さなければ、動作しなかったので
cd /usr/ports/security/gnutls
make clean
make
make reinstall
今度は、「imapd」の方
cd /usr/ports/mail/courier-imap
make
make reinstall
サービスの再起動。
service courier-imap-imapd-ssl restart
service courier-imap-imapd restart
これで、症状は回復しました。
|
|