元スレMac OS X + PHP + MySQL
php覧 / PC版 /みんなの評価 :
108 = :
>>107
誘導ありがとう
109 = :
まんぴのアップデートってどうすれば良いの?
111 = :
プログラムを実行したら
supplied argument is not a valid MySQL result resource
という文が出てきたのですが、どういう意味なのか教えてもらえないでしょうか?
よろしくお願いします。
113 = :
>>112
簡易GDでよけりゃ、素でコンパイルすりゃ使える。
いろいろやりたきゃ、自分でいろいろ入れる。
portが簡単だよ。
114 = :
>>111
エラーチェックはしてるか?
http://www.php.net/manual/ja/function.mysql-query.php
115 = :
>>113
GD自体は入れたんだけど、元のPHPの場所が分からんくて。。
mac OSはこれが初物で。自分でソース引っ張ってきて
makeして再起動しても有効にならんし、いまいちどこをいじればよいのか不明なんす
116 = :
>>115
うーん、というか*nix系でapache/phpを使うのが初めてって事か?
じゃなけりゃアタリが付くはず。わからなくてもphpinfo()の出力に
全てがある。
おれもphpは別ツリーで管理してるなぁ。但しlibphp4.soは
バックアップをとっておけ。じゃないとうpでたんが出たときに
入れ換えられてしまう。
117 = :
昔はdebian使ってた。
phpサイトでおとしたソースファイルに書いてあった、mac osXクライアント版のインストール方法だと、wgetでlibphpをインスコするみたいだね。これだとオプションどうなるんだろ?
118 = :
多分この人のファイルの事かな。
つhttp://www.entropy.ch/software/macosx/
おれは使ったことないからわかんないけど、とにかく
phpinfo()の内容を自分で確認汁。
119 = :
俺UNIXとかわからないが、libjpegとかその他いろいろ
ググりながら./configure、make、make insutallを繰り返して
いよいよphpのコンパイルまできたんだけど、
make中curl.cってところでエラー出でた。
ほんでCURLのバージョン落としたり、macportからインコしたCURLを指定しても
同様のエラーでmakeできないんだけどcurl.cがわるいのかね?
今夜はphpのバージョン落としてためしてみるかな・・・
120 = :
phpinfoだと、こんな感じ。
'/SourceCache/apache_mod_php/apache_mod_php-18.8/php/configure'
'--prefix=/usr' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--disable-dependency-tracking'
'--with-apxs' '--with-ldap=/usr' '--with-kerberos=/usr'
'--enable-cli' '--with-zlib-dir=/usr' '--enable-trans-sid'
'--with-xml' '--enable-exif' '--enable-ftp' '--enable-mbstring'
'--enable-mbregex' '--enable-dbx' '--enable-sockets'
'--with-iodbc=/usr' '--with-curl=/usr'
'--with-config-file-path=/etc' '--sysconfdir=/private/etc'
'--with-mysql=/usr' '--with-mysql-sock=/var/mysql/mysql.sock'
'--without-pear'
んで、プラスして
'--with-gd'
とねじ込みたいんだよね。
環境的には、
Intel mac mini
OS X Tiger
うーむ、困った。。
121 = :
デフォルトのPHPはセキュリティーアップデートのときに勝手にバージョンアップされたり、
自分で設定した項目が戻されるみたいなことどっかで見たんだけど
prefixで/usr/localを指定すればセキュリティーアップデートに影響しない?
122 = :
--prefix=/usr/local でも --with-apxs(=/usr/sbin/apxs) なら libphp4.so は /usr/libexec/httpd に入るから影響するよ。
>>120
こんな感じでいけるはず。とりあえず make までは試した。
1. autoconf やら automake やらをインストール
2. PHP-4.4 系のソースコードを入手
3. tar xfj php-4.4.4.tar.bz2
4. cd php-4.4.4/ext/gd
5. /usr/bin/phpize
6. ./configure --with-php-config=/usr/bin/php-config --with-gd \
--with-jpeg-dir=/hoge --with-png-dir=/hoge --with-zlib-dir=/hoge --with-freetype-dir=/hoge
7. make
8. sudo make install
9. sudo cp /etc/php.ini.default /etc/php.ini
10. /etc/php.ini を編集
extension_dir = "./" をコメントアウト (行頭に ; を入れる)
extension=gd.so と一行追加
11. システム環境設定でパーソナルWeb共有を停止→開始
GD ライブラリはインストール不要っていうか PHP バンドル版の GD を使ったほうが使える関数が多いので configure でパスを指定しない。
123 = :
ごめん無理だった。
なんか OSX デフォの PHP は C 言語レベルで足りないグローバル変数がいっぱいあるみたいで
DSO として拡張モジュールを入れるのは無理くさい。
全部入れ直しだね。
124 = :
>>122
じゃセキュリティーアップデート時にlibphp4.soを退避させるとか
/usr/local/libexec/httpd/に移すとかする必要があるのかな?
>>123
ライブラリ群は個別に用意する必要があるってこと?
125 = :
>>124
>セキュリティーアップデート時にlibphp4.soを退避させる
でok.
>ライブラリ群は個別に用意する必要があるってこと?
ライブラリというか、PHP全部を自分でコンパイルする必要あり。
慣れるとそう難しくもないんだけど、面倒くさかったらMacPortsで
sudo port install php4 +apache +gd +macosx
か
sudo port install php5 +apache +macosx
で一発よ。
127 = :
>>119
curl関数ってphpで使う?
とりあえず、ディテクトリ?指定しなきゃmake通ると思う。
NG: --with-cul=/hoge
OK: --with-curl
>>121
jaguarから使ってるけど、セキュリティーアップデートで勝手にいじられた覚えはないなぁ。>libphp4.so
httpd.confは書き変えられたことはあるが。
セキュリティーアップデートのphpより上のバージョン使ってれば大丈夫なんじゃい?
>>122
--with-gdだけでバンドル版は入ったという記憶がある。
(いや、--with-gdすらいらなかったっけ?)
--with-jpeg-dirとかはいらない。
指定したい場合は、ライブラリを自分でインストールしないとダメ。
128 = :
>>125
thx
んで、macportsをいれて、再度書いてもらったコマンド入れたら、柿のようなエラーが。。
If this is your first install, you might want
* copy /opt/local/etc/php4/pear.conf.sample to /opt/local/etc/php4/pear.conf
---> Activating php4 4.4.4_2+darwin_8+macosx
Error: Target com.apple.activate returned: Image error: /opt/local/lib/php4/.channels/.alias/pear.txt already exists and does not belong to a registered port. Unable to activate port php4.
Error: Status 1 encountered during processing.
原因なんだろう。
php自体に問題あるのかと思い、単体で入れても上記と同様のエラーが。うーむ、もう少し調べてみるか。
129 = :
自己レス
errorに表示されてるファイルを消しまくっていったらとりあえずはエラーは出なくなった。
が、再起動後phpinfoみても全く変わってなし(゚Д゚;)。。
130 = :
>>129
どうやっているか、全部晒してみ
131 = :
いまだ自前コンパイルをあきらめない俺がいるww
132 = :
んと、
とりあえず、色々試してみた。
1.sudo port install php4 +apache +gd +macosx
→128のようなエラーが出た。
がfind / -name "libphp4.so"で検索するとそれらしきものが/opt配下に出来てるので、
↑を/usr/libexec/にコピーして、再起動してみた。
既にインスコ済みのmysqlに接続できないのでとりあえずやめ。
2.sudo port install php4 +apache +gd +macosx +mysql
→mysqlも一緒に入って、かつgdも入った。いけそうかと思ったが、
新しく入ったmysqlにsocket関連のエラー出力ではいれず、とりあえずやめ。
3.http://www.entropy.ch/software/macosx/php/からphp5+apache1.3のパッケージを
引っ張ってきて入れて再起動してみるも、bus errorでapache起動せず。
という感じで今はintel mac os X client用に用意されているlibphp4.soを探し中。
昔は
http://www2.entropy.ch/download/libphp4.so.gz
http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz
でいけたっぽいが今はnot foundらしい(PPC用?)。
133 = :
>>128 /usr/libexec ?
それじゃダメだぞ。apacheの設定を変更していないなら
/usr/libexec/httpd になるはず。
134 = :
>>132
とりあえず、/optもろとも全部消してから、portsの再インストール。
バイナリで入れたんなら、/Library/Receipts/内にゴミがあるからとりあえず、
それも消す。
portsで入れたんなら、/usr以下は関係ない。
というか触ると余計はまる。
一遍にいろいろやらないで、少しずつやってみれば?
例えばさ、こんだけでもOKじゃん。
./configure --with-apxs=/usr/sbin/apxs
で、うまく動いたら少しずつオプション増やしてく。
動かんと泣きたくなるけど、まぁ、がんばれ。
135 = :
>>133-134
THX
はまりまくったが、何とか動かした。。
かなり力業っぽいが、ご愛嬌で。
以下に手順を書いておくので、同様にはまりまくった人は見てほしいです。
まず、
◆既存システム情報
・intel mac OS X Tiger(mac mini)
・apache1.3(バンドル版)
・php4(バンドル版)
・mysql5(パッケージでいれた)
んで、
◆目的
・バンドル版php4でGDを動かす。
長いので続く
136 = :
そいで、
◆やったこと
・Macportsから以下のコマンドでインストール
sudo port install php4 +apache +gd +macosx +mysql5
→エラーはでまくるが無視
・出来たlibphp4.soを/usr/libexec/httpd/にコピー
・既存php.iniを/opt/local/etc/にコピー
・既存mysqlディレクトリを、新規でインストールされたmysqlディレクトリにディレクトリごとコピー
・再起動
Mysql + GD + PHP のシステムが動いた。というかzenphotoなんだけどさ。
ちゅうことでとりあえず美しくはないが、できましたんで、ご報告。
クソ疲れたわ。。
138 = :
Mac OS XでのPHPの野良ビルドは難しくねーだろ。
躓くとすれば依存ファイルとか。
139 = :
>>138
マウス操作でなんでもやってきた人には仕切り高いよ。
140 = :
OS10.4.8
にPHP5をmakeしようと思ってconfigureしたのですが、mysqlのところでerrorになってしまいますた。
mysqlの設定はデフォルトで入っていたphp4のconfigureオプションの通りにしたのですがいいかの様なエラーが出てしまいます。。
configure: error: Cannot find MySQL header files under /usr.
Note that the MySQL client library is not bundled anymore!
これを見る限りもっと具体的なパスを指定しないとイケナイみたいですが、
OSXのどこにmysqlがインストールされているのかが分かりません。。orz
whereisしてもみつかりません。。orz
デフォルトのphp4のinfoだとmysql enableになっているのに。。なんでこの設定じゃイケナイんだろう。。
実行したオプション:
./configure --prefix=/usr/local --with-apxs --with-ldap=/usr
--with-kerberos=/usr --enable-cli --with-zlib-dir=/usr
--enable-trans-sid --with-xml --enable-exif --enable-ftp
--enable-mbstring --enable-mbregex --enable-dbx --enable-sockets
--with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc
--sysconfdir=/private/etc --with-mysql=/usr --with-mysql-sock=/var/mysql/mysql.sock
--without-pear --enable-sqlite-utf8 --enable-zend-multibyte
141 = :
>>140
MYSQLいれてないんじゃ?
142 = :
>>141
はい、、入れてないです。。
でもOSXってMySQLデフォルトで入ってませんでしたっけ。。いや入ってないんですねご免なさいm(__)m
じゃ、sqliteでいいやー。ありがとー141さ~ん。
143 = :
mysql5をインストールしてphpmyadminからデータ入力をしたら「???」
のように日本語文字が化けてしまうんだけどmysqlの日本語の取扱についての
対策方法ってどんなのがあります?
現状でmy.cnfに以下のような設定を記述したんだけど状況は変わらずです。
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
socket = /tmp/mysql.sock
old-passwords
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
145 = :
こんにちは。このスレを立てた>>1です。
そろそろ次スレが必要かと思って見に来ましたがまだまだ大丈夫そうですね。
また30年くらいしたら来ます。
147 = :
>>146
123.456.789.123の3307ポートは開いているのかい?
148 = :
MAMPを使って公開ウェブサーバってできるもんですかね。
149 = :
>>147
ポートが開いてませんでした
150 = :
>>148
と聞かれれば出来るとこたえる。おれは嫌だけどな。
みんなの評価 :
類似してるかもしれないスレッド
- CGI VS PHP VS JAVA (341) - [25%] - 2017/12/31 9:30
- Apache + MySQL + PHP (89) - [23%] - 2018/5/20 9:31
トップメニューへ / →のくす牧場書庫について