No such file or directory @ realpath_rec – /usr/local/lib/compat/pkg/libmysqlclient.so.18


自分のためのFreeBSDメモ

FreeBSDのPortsのアップグレードをしていたら

---> Cleaning out obsolete shared libraries
No such file or directory @ realpath_rec - /usr/local/lib/compat/pkg/libmysqlclient.so.18

というメッセージが出ているのに気が付きました。その後特に動作に影響はないみたいなのですが気になったので調べてみました。

すると、/usr/local/lib/compat/pkg/ というディレクトリはOSのバージョンアップをした際に互換性を保つためのパッケージライブラリのシンボリックリンク集だということが分かりました。最近、FreeBSDのRELEASEをアップグレードしたり色々と更新した際に出てくるようになったみたいです。

対策は非常に簡単で、「アップデート類がすべて正常に完了しているならディレクトリ /usr/local/lib/compat/pkg/ の中にあるファイルを全部削除してしまう」ことです。もちろん、今回問題の libmysqlclient.so.18 に関する部分だけ削除してもいいのでしょうけど、他もあっても使われないはずのものなので私は全部削除しました。もっとも、いきなり全部削除するのは怖いので別ディレクトリに移動して空にして様子見できるようにしましたが、ともあれこれで問題は解決しました。

以下参考になった記事リンクです。

Solved – MySQL update | The FreeBSD Forums

Apr 9, 2018#12
You can probably remove everything in /usr/local/lib/compat/pkg, you’re not going to need it if the updates have all been successful.
Senior UNIX Engineer at Unix Support Nederland
Experience is something you don’t get until just after you need it.

Apr 10, 2018#13
Happy to report that clearing out the /usr/local/lib/compat/pkg folder of everything has stopped the error when installing updates.

 


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です