FreeBSD QandA 658
Q. あるプログラムを実行しようとしたら、
/usr/libexec/ld.so: warning: /usr/lib/libc.so.3.0:
minor version 0 older than expected 1, using it anyway
のようなエラーになります。どうしたら良いでしょうか?
A. 例えば,あなたが利用しているのが FreeBSD 2.2.1-RELEASE なのに、
FreeBSD 2.2.6-RELEASE 用の package をインストールしてしまった、などと
いう場合にこのエラーが出ます。
つまり、ある特定バージョンの OS 用にダイナミックリンクするよう作成され
たプログラムを、それより古いバージョンの OS で実行しようとした場合に出
るエラーです。そのプログラムを実行しないのが賢明ですが、どうしてもその
プログラムを実行(利用)したいのであれば、
1. 自分が使用しているバージョン用のプログラムを入手する。
(FreeBSD 2.2.1-RELEASE を使用しているのなら、
FreeBSD 2.2.1-RELEASE 用のプログラムを入手する)
2. ports を使うなどして自分でコンパイルし直す。
3. 最新の RELEASE に Upgrade する。
という方法をとらなければなりません。
「shared library(上記の例だと libc.so.3.1 です)
だけ新しい物を持って来る。」
や、
「今 持っている shared library を copy して、
バージョン番号だけをごまかす。」
などの無理な対処は、プログラムの誤動作を引き起こす可能性があり、非常に
危険ですからやめましょう。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。