Kaz Kojima
kkoji****@rr*****
2005年 1月 16日 (日) 16:23:08 JST
小島です。 Junichi Akita <akita****@is*****> wrote: > libgphoto2、gphoto2ともにmakeは無事通るのですが、 > いざgphoto2を実行しようとするとエラーがでまして、 > # LD_DEBUG=all gphoto2 >& log > で見てみると、 > ----- > (中略) > 00280: symbol=__libc_write; lookup in file=gphoto2 > 00280: symbol=__libc_write; lookup in file=/lib/libpthread.so.0 > 00280: symbol=__libc_write; lookup in file=/lib/libgphoto2.so.2 > 00280: symbol=__libc_write; lookup in file=/lib/libm.so.6 > 00280: symbol=__libc_write; lookup in file=/lib/libc.so.6 > 00280: binding file /lib/libpthread.so.0 to /lib/libc.so.6: normal symbol `__l\ > ibc_write' [GLIBC_2.2] > *** Error (-4: 'Error loading a library') *** > (以下略) > ----- > となっていました。 > __libc_writeというのは、libcの内部シンボルのようなのですが、 > これはlibc内部の問題、ということなのでしょうか・・・? binding file /lib/libpthread.so.0 to /lib/libc.so.6: normal symbol `__libc_write' [GLIBC_2.2] というのは ld.so の正常なメッセージです。 x86 上ですが $ strings /usr/bin/gphoto2 | grep "*** Error" *** Error *** *** Error (%i: '%s') *** *** Error (%i: '%s') *** $ strings /usr/lib/libgphoto2_port.so.0 | grep "loading" Error loading a library となるので > *** Error (-4: 'Error loading a library') *** というのは gphoto2 がだしているメッセージだろうと思います。 # ld.so はこの形のエラーメッセージをださないはず gphoto2 の中見を見ていないのではずしているかもしれませんが 何を load (dlopen ?)しようとして失敗したのか分かれば原因の 見当がつくかもしれません。 これも x86 上ですが strace -e open gphoto2 とするとやたらにたくさん表示されますので。 もちろん compiler/libc の問題という可能性もあるのですが...