[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:06814] Don't exist /usr/lib/libpthread.so
-
From:Seiji Fukagawa
-
Date:Fri, 11 Aug 2000 13:58:22 +0900
- Subject: [plamo:06814] Don't exist /usr/lib/libpthread.so
- From: Seiji Fukagawa <fukafuka@xxxxxxxxxxxx>
- Date: Fri, 11 Aug 2000 13:58:22 +0900
- Posted: Fri, 11 Aug 2000 13:56:19 +0900
深川と申します。久々にポスト (長文) します。
遅ればせながらようやく Plamo2.0 をインストールして環境構築中なの
ですが、xmms-1.2.2 や sylpheed-0.3.22 の configure が通らないという
現象にぶち当たりました。こんな感じ。
$ ./configure --enable-kanji --enable-texthack (xmms の場合)
(snip)
checking for glib-config... /usr/bin/glib-config
checking for GLIB - version >= 1.2.2... yes
checking for gtk-config... /usr/bin/gtk-config
checking for GTK - version >= 1.2.2... no
*** Could not run GTK test program, checking why...
で、調べて行くと (xmms で調査。sylpheed が同じ原因かは未調査)
configure 中に作成するテストプログラムである conftest の実行で
Segmentaion Fault を起こしているのが原因だとわかりました。
GDB した時の様子は以下の通り。
(gdb) run
Starting program: /usr/local/src/xmms-1.2.2/./conftest
warning: Unable to find dynamic linker breakpoint function.
warning: GDB will be unable to debug shared library initializers
warning: and track explicitly loaded dynamic code.
Linux thread target has modified Unknown signal handling
Program received signal SIGSEGV, Segmentation fault.
0x402530ff in ?? () from /lib/libc.so.6
(gdb) bt
#0 0x402530ff in ?? () from /lib/libc.so.6
#1 0x4032b251 in ?? () from /lib/libpthread.so.0
#2 0x4032e438 in ?? () from /lib/libpthread.so.0
#3 0x4032824e in ?? () from /lib/libpthread.so.0
thread? でも、conftest の中身はたいしたものではなく、thread
なんて使っていません。関係してそうなのは system 関数くらい。
試しにコメントアウトしてみると、ちゃんと動きます。
# ここもちょっと腑におちないのですが...。
conftest のコンパイルオプションはこんな感じなのですが、
$ gcc -o conftest -g -O2 -I/usr/lib/glib/include -D_REENTRANT conftest.c
-L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule
-lgthread -lglib -lpthread -ldl -lXext -lX11 -lm
pthread なんて使ってないということで、-lpthread を外してみると
動きます。うーむ。もうちょっと調べると...
$ gcc conftest.c -L/usr/lib -lgthread -lglib -lpthread は OK
$ gcc conftest.c -lgthread -lglib -lpthread は NG
となる事がわかりました。
# -lgthread を外すとまたちょっと動作が違い、ここもちょい謎なのですが。
# そもそも -lgthread って?? pthread との関係は?
ライブラリ検索パスで動作が違うとゆーことで調べて行くと...
$ ls -l /lib/libpthread*
-rwxr-xr-x 1 root root 67564 2月 5日 2000年 /lib/libpthread-0.8.so*
lrwxrwxrwx 1 root root 15 8月10日 01:17 /lib/libpthread.so -> libpthread.so.0*
lrwxrwxrwx 1 root root 17 8月10日 01:17 /lib/libpthread.so.0-> libpthread-0.8.so*
$ls -l /usr/lib/libpthread*
-rw-r--r-- 1 root root 89888 4月 16日 16:34 /usr/lib/libpthread.a
-rw-r--r-- 1 root root 95376 4月 16日 16:34 /usr/lib/libpthread_p.a
となっており、/usr/lib/libthread.so がないのが原因のように思われました。
# -lpthread なんてつけんなよ、ってのが筋かも知れませんが。
調べてみると Slackware 7.0 では以下のようになっています。
$ ls -l /lib/libpthread*
-rwxr-xr-x 1 root root 247008 Sep 16 1999 /lib/libpthread-0.8.so*
lrwxrwxrwx 1 root root 17 Feb 12 2000 /lib/libpthread.so.0 -> libpthread-0.8.so*
$ ls -l /usr/lib/libpthread*
-rw-r--r-- 1 root root 663802 Sep 16 1999 /usr/lib/libpthread.a
lrwxrwxrwx 1 root root 25 Feb 12 2000 /usr/lib/libpthread.so -> ../../lib/libpthread.so.0*
-rw-r--r-- 1 root root 669776 Sep 16 1999 /usr/lib/libpthread_p.a
なんかサイズがやけに違うのが気になりますが、Slackware にならって
$ su
# cd /usr/lib
# ln -s ../../lib/libpthread.so.0 libpthread.so
してから configure をやり直すと無事終了しました。
以上が顛末なのですが、この対処で問題ないでしょうか?
とゆーか、こんなの誰かがすぐにぶつかりそうな問題の気がするのですが、
今までにそのような報告は ML にありませんし、ひょっとして私が何か勘違い
してるのか、と不安なのですが。(^^;
# あと libpthread のサイズがやけに小さいのも。Slack のは strip してない
# ということなのかしらん?? それならいいけれど...。
そうそう。Plamo は canna を使う Note PC 用お勧めパッケージを
インストールし、カーネル再構築した直後の状態です。
Plamo の CD は Linux Japan 2000/7 のものを使っています。
--
深川 誠司 Web: http://www1.plala.or.jp/fukafuka/
(Seiji Fukagawa) mailto: fukafuka@fsinet.or.jp
XDriller 0.7.0 (α版) 公開中...
- Follow-Ups
-
- [plamo:06815] Re: Don't exist /usr/lib/libpthread.so, Seiji Fukagawa
- [plamo:06826] Re: Don't exist /usr/lib/libpthread.so, Masayoshi Tsuchiya
- [plamo:06827] Re: Don't exist /usr/lib/libpthread.so, KOJIMA Mitsuhiro
[検索ページ]
[メール一覧]
Plamo ML 公開システム