- ベストアンサー
FreeBSDでphp5-extensionをインストールするとMySQLもインストールされてしまう問題
- 当方FreeBSD 7.0でPHP5+APACHE2.2+MySQL5.1をインストールし、サイト運営をしようとしています。PHPとAPACHEはportsからインストールし、MySQLはportsではなくMySQL ABのサイトから取得したソースからコンパイルしました。
- PHPからMySQLを利用するためphp5-extensionをportsインストールしようとしているのですが、php5-extensionの依存関係のせいかMySQL5.1もportsインストールしようとしてしまいます。
- 多分MySQLだけはportsを利用しないでインストールしたためと思うのですが、MySQLは既にインストールしているため不要と考えています。MySQL自体の取得は回避してphp5-extensionをインストールする方法はありますでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>正確にはmysql.soなどのPHPからMySQLに接続するためのライブラリ(?)だけが欲しかったのですが、 ports では MySQL-3.23 以降、 mysql*-client と mysql*-server に分割されており、ライブラリは -client に含まれています。 > php5-extensionでMYSQL選択をするとports依存関係でMySQL5.1自体を取得しまうので、 -client, -server の分割は ports での話で、配布元のソースは共通なわけです。それぞれ自分の受け持ちのものだけをインストールします。 php5-extensions のように、MySQL ライブラリをリンクすることで MySQL 対応している ports は -client のみに依存関係を持ちますので、 今回は普通にインストールしてしまって良かったということですね。
その他の回答 (1)
- fmysh
- ベストアンサー率79% (27/34)
php5-extensions の options にはデフォルトでMYSQLが選択されているので、それを解除します。 cd /usr/ports/lang/php5-extensions make config MYSQL のチェックを外す portupgrade -f php5-extensions ports は一般に /usr/local/ の下へインストールしますから、混ざらないように、ソースから入れる MySQL のツリーを別けておく(たとえば/optとか)のが良いと思います。 ただ、Ports を使うならば、あえて MySQL だけソースから入れるメリットはほとんどないと思います。 既にMySQLをインストールしてあるというのが理由だとしても、どのみちバージョンアップ時には入れ直すことになりますので、それが縛りになることはないように感じます。
お礼
fmysh様、ご回答ありがとうございます。 すいませんが私の説明が悪かったです。 正確にはmysql.soなどのPHPからMySQLに接続するためのライブラリ(?) だけが欲しかったのですが、php5-extensionでMYSQL選択をすると ports依存関係でMySQL5.1自体を取得しまうので、MySQL5,1は取得せずに mysql.soなどのライブラリだけ取得する方法が知りたかったのです。 fmysh様から頂いたアドバイス通りMYSQLを選択しないで再インストール してみましたが、mysql.soは入りませんでした。 再インストール覚悟でMYSQLも選択してphp5-extensionをインストール してみたらmysql.soが入りPHPからMySQLへ接続できました。
お礼
fmysh様、分かりやすい説明をありがとうございました。 。 php5-extensionでMySQLにチェックを入れても-clientしかインストール されないという認識で正しいでしょうか。 いろいろと勉強になりました。テスト機を使ってもう少し試してみたいと 思います。 今回はどうもありがとうございました。