[前][次][番号順一覧][スレッド一覧]

mysql:985

From: Koichi Shimizu <Koichi Shimizu <smz@xxxxxxxxxx>>
Date: Thu, 01 Jul 1999 23:30:38 +0900
Subject: [mysql 00985] mysqlclient の実行時ロードについて

はじめまして。清水と申します。

さて、早速ですが質問です。今、 Linux(Slackware)上で、 Webから MySQLで構築
したデータベースにアクセスする CGI を書いています。

この CGI は、C で記述しているのですが、最初、コマンドライン上で動作させた
ときに、

xxx.cgi: can't load library 'libmysqlclient.so.6'

というメッセージが出てしまい、起動しませんでした。そこで、自分の
LD_LIBRARY_PATH に、libmysqlclient.so.6 のあるディレクトリ(私の場合は
/usr/local/lib/mysql)を追加して、実行したところ、うまく動作してくれまし
た。

ところが、困った事に、これは CGI として動作させたいので、実際に Web から
起動されるときには、nobody ユーザで実行されるのです。

案の定、Web 経由で実行すると、error_log には、最初にコマンドラインで実行
したときと同じメッセージが出ていて、CGI は動作しませんでした。

このようなとき、nobody ユーザに LD_LIBRARY_PATH を指定する方法はあるので
しょうか?あるいは、MySQL 自体を再コンパイルする必要があるのでしょうか?

環境は、
	o gcc version 2.8.1
	o GNU ld version 2.8.1 (with BFD linux-2.8.1.0.1)
	o Mysql 3.22.22
	o Apache 1.3.6
	o Linux 2.0.30
といったところです。

あまり MySQL 自体には関係の無い話かも知れませんね。済みません。もし「ここ
ではふさわしくない」質問なら、CGI 関連のMLにでも投げてみますが…。

よろしくお願いします。
--
Koichi Shimizu Tokyo, Japan
                 smz@xxxxxxxxxx


[前][次][番号順一覧][スレッド一覧]