mysql:266
From: <takeshi@xxxxxxxxxx>
Date: Mon, 28 Sep 1998 22:26:11 +0900
Subject: [mysql 266] 3.22.7b lib
3.22.7b-beta をコンパイルしていて、ちょっと氣になった点があります。
それは libmysqlclient.so を作成するときのフラグで、以下のように違っています
3.22.4a
gcc -shared -Wl,-soname -Wl,libmysqlclient.so.4 -o \
.libs/libmysqlclient.so.4.0.0 \
xxxx.lo ....... xxxx.o -lm -lz -ldl
^^^^^^^^^^^^ configure で検出したlib
3.22.7b
gcc -shared -Wl,-soname -Wl,libmysqlclient.so.4 -o \
.libs/libmysqlclient.so.4.0.0 \
xxxx.lo ....... xxxx.o
^^^^^^^^^ ない!
ldd client/.libs/libmysqlclient.so.4.0.0
./client/.libs/libmysqlclient.so.4.0.0 => \
./client/.libs/libmysqlclient.so.4.0.0
libc.so.5 => /lib/libc.so.5
これだけしかリンクされていない、、、
で、結果的に、3.22.4a までの libmysqlclient.so で作ったアプリが
動かないという現象がおきています。
library をアペンドして libmysqlclient.so を作り直せば問題ないですが、
(わたしのWWWページで公開しているものはアペンドしてます)
3.22.7b のリンクの仕方がいいのかどうかちょっと迷いが生じています。
.so の作り方としては 3.22.7b は 100% 正しいものですか?
3.22.4a までのやり方が間違っていれば、全部アプリの作成し直しですが、
-lc -lm などの lib をつけてもいいなら、互換のため、つけたいと、
TCX の ML にでも言ってみたいと思いますが...
どうなんでしょう?
村上 毅 takeshi@xxxxxxxxxx
PGP fingerprint = 45 5D 54 12 B4 55 77 7F D4 52 66 EC 03 3F 1B E9
[ http://www.softagency.co.jp/mysql/ ]
[ MySQL ML: mysql-help@xxxxxxxxxx ]