[Freewnn-users 131] Re: チケット #24189 libutilはuumだけにリンクするように設定するの件

Back to archive index

Tomoki AONO aono****@cc*****
2013年 8月 2日 (金) 04:31:01 JST


青野です。お返事ありがとうございます。
#IM遍歴については何も回答できずすみません。

(2013/08/02 0:47), 1xx wrote:
>> commitメッセージに1xxさんの名前を載せようかと思いますが、
>> 「1xx (メールアドレス at gmail.com)」と表記しましょうか。
> 
> 載せるのであれば前者でお願いいたします。

そのような方向でcommitしました。ありがとうございます。

(引用順序を変えます)
>> 書いていますが、posix_openpt()があるような処理系ではそもそも
>> libutil(openpty()が入っている)が不要と考えられます。
>> (お手元の環境でlibutilをリンクしないように修正して構築することで
>> 確認できると思います。)次の段階ではその辺の判定も含められると
>> いいなあと(漠然と)考えています。
> 
> 確かに-lutilが無くてもlinkに成功しました。
>> ldd Wnn/uum/.libs/uum
>          linux-vdso.so.1 (0x00007fff5a5fe000)
>          libwnn.so.0 => /usr/local/lib64/libwnn.so.0 (0x00007f530a321000)
>          libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f530a0e5000)
>          libncurses.so.5 => /lib64/libncurses.so.5 (0x00007f5309ebe000)
>          libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f5309c8a000)
>          libc.so.6 => /lib64/libc.so.6 (0x00007f53098d9000)
>          libdl.so.2 => /lib64/libdl.so.2 (0x00007f53096d5000)
>          /lib64/ld-linux-x86-64.so.2 (0x00007f530a57b000)
> (どのsoで定義されているのでしょう?)
> 
> ただ、man 3 openptyするとLink with -lutilとありますので、
> manualを信じてこのままでもよいような気もします。

現在のコードでは、ptsname(3)が存在する場合はopenpty(3)は使わずに
posix_openpt(3)、または(古めのSolarisの場合)/dev/ptmxを開いて
疑似端末を確保します。この場合、追加で必要なライブラリはありません。
(openptyしかない環境ではバイナリにsetuidが必要な場合があるため、
このような判定順序になってます。)

繰り返しになり恐縮ですが、libutilが必要なのはptsnameが存在せず
openptyが存在する環境のみとなります。その辺りをうまくconfigureで
記述できればもっとよいコードになると考えてます。
----
青野智樹	(aono****@cc*****)
Personal opinion only...




freewnn-users メーリングリストの案内
Back to archive index