戸川です。 困ったというわけではないのですが、勉強したい事があったので。
10.3をソースからインストールしたのですが、make delete-old-libsの 後に/usr/libを見ると、かなり古い日付の.aファイルがある事に 気づきました。 ---- -r--r--r-- 1 root wheel 26676 11月 15 2014 libbluetooth_p.a -r--r--r-- 1 root wheel 24316 11月 15 2014 libbluetooth.a ---- 「make installすると、古いライブラリは新しいもので上書きされる」 と思っていたので、不思議に思って調べました。 試しに、/usr/src/lib/libbluetooth/ で make -n install してみると、 以下のような処理が行われるようです。 ---- install -C -o root -g wheel -m 444 libbluetooth.a /usr/lib install -C -o root -g wheel -m 444 libbluetooth_p.a /usr/lib install -s -o root -g wheel -m 444 libbluetooth.so.4 /usr/lib ---- ここで、.aファイルをインストールする時の -C フラグですが、 「内容が同じなら、ファイルの更新時間を更新しない」という フラグであると理解しました。ここまでで、.aファイルの タイムスタンプが更新されないのは理解しました。 で、.aファイルが同一ならば、.soファイルも同一だと思ったのですが、 手元にあった古い libbluetooth.so.4 と、新しい libbluetooth.so.4 では md5の値が違うようなのです。 .soファイルをobjdumpしてみたところ、.comment セクションに、subversionの ブランチのパスとかリビジョン番号が入っているようなので、ここが原因 (今回はreleng/10.2からreleng/10.3)なのは分かったのですが、どうして ここに情報を入れて、違うファイルにしているのか、が興味があったりします。 同じブランチであれば、同じファイルが生成されるのかもしれませんが、 そうすると今度は.soファイルのインストール時に-Cフラグが付いていないのが 気になります。 どなたか、よろしければ教えていただきたく。 以上です。 -- Satoshi.Togawa <s...@t11i.jp> _______________________________________________ freebsd-users-jp@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-users-jp To unsubscribe, send any mail to "freebsd-users-jp-unsubscr...@freebsd.org"