Ubuntu + MySQL + CakePHPの環境でbakeコマンドでモデルを作成しようとすると下のようなエラーが出てしまいます

PHP Fatal error: Call to undefined function mysql_query() in PATH/cake/libs/model/datasources/dbo/dbo_mysql.php on line 600

現状わかってること
●PHPはソースからコンパイルしていて/usr/local/bin/phpにあります
●/usr/local/bin/php -v を実行すると5.3.4 /usr/bin/php -v を実行すると5.3.3
●cake/console/cake.phpの1行目に「#!/usr/bin/php -q」とあったので「#!/usr/local/bin/php -q」に変えても同じエラーが出る
●Webアプリ経由でmysql_query()を実行してもundefinedにはならない
●Webアプリ経由でphpinfo()を実行するとConfigurationFilePathは「usr/local/lib」、LoadedConfigurationFileは「usr/local/lib/php.ini」
●コマンドからphp -ini を叩くと、ConfigurationFilePathは「usr/local/lib」、LoadedConfigurationFileは何故か「(none)」

CLI版のPHPがphp.iniを読み込めてないのかな?と思ったのですが、LoadedConfigurationFileを「(none)」から変える方法がわかりませんでした。php.iniの問題ではないかもしれません

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/07/08 18:26:07
  • 終了:2011/07/12 11:09:14

回答(1件)

id:km1981 No.1

km1981回答回数429ベストアンサー獲得回数492011/07/09 11:58:27

ポイント100pt

configure時に--with-config-file-path=PATHオプションを指定していないのだと思います

これを指定しないと、CLI版でphp.iniのパスを指定できません。

  • id:rouge_2008
    php.iniで「extension_dir」を指定してあるでしょうか?
    指定しても駄目な場合は、次の記事の方法を試してみてください。

    http://d.hatena.ne.jp/STAR_ZERO/20110211/1297432256
    ※「export PATH=/usr/bin:$PATH」は、「which php」で確認したパスが「/usr/bin/php」なら「export PATH=/usr/local/bin:$PATH」とします。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません