2004年2月1日(日)

arla の configure が FreeBSD の OS の kerberos を見つけない理由

これが分からなくて散々悩んだ。
configure ものはどうやって判定していて、判定法はどこに書いてあるのかちっとも分からん。

ports で突っ込んだ heimdal も OS の src tree に入ってる heimdal もほとんど同一なのに ports からインストールしておかないとこのシステムには kerberos がないと断定されてしまっていたわけだが、やっと ports と /usr/lib の違いを発見。
ports 版はちゃんと shared library になっていて、何をリンクしているかが分かるんだが /usr/lib 版はそれがない。 ldd(1) で見るとこんな感じ

xxxxxxx-afs1# ldd lib/libkrb5.so heimdal/lib/libkrb5.so
lib/libkrb5.so:
heimdal/lib/libkrb5.so:
        libcrypto.so.3 => /lib/libcrypto.so.3 (0x2818e000)
        libasn1.so.6 => /usr/heimdal/lib/libasn1.so.6 (0x2829c000)
        libroken.so.16 => /usr/heimdal/lib/libroken.so.16 (0x282c2000)
        libcrypt.so.2 => /lib/libcrypt.so.2 (0x282d0000)
        libc.so.5 => /lib/libc.so.5 (0x28076000)
        libcom_err.so.2 => /usr/lib/libcom_err.so.2 (0x282e9000)

configure は -lroken をつけずにチェックを回すんだが heimdal 版なら勝手に見つかるけところを /usr/lib 版だと undefined reference で終わっちゃう。じゃあ /usr/lib 版の roken でいいかというと微妙に関数足らないんだけど……。 libc に同種の関数があるのは省いたな……

うーむ、 -lkafs5 もつけて欲しいんだが見つけてくれてないのかな?名前か?名前が悪いんか? libkafs.so -> libkafs5.so な symlink 作って逃げたり(ょゎ

む、 header ない…(:_:)

できた〜〜〜〜〜〜〜〜。\(^^)/でも、疲れた………(;_;)

[referer: [an error occurred while processing this directive]]

あわせて読みたい