えー、この記事は失敗記事です。
うまくいくか不明ですが、もしうまくいった人がいれば
コメントください(;ω;)オナシャス
mirror サイトからダウンロード
※直接ダウンロードができない(´・ω・)
ローカルから、サーバへアップしました。
$ tar zxvf httpd-2.4.9.tar.gz $ tar zxvf php-5.5.13.tar.gz
まずはApacheをインストール
$ cd httpd-2.4.9/
$
checking for xml2-config path...
configure: error: xml2-config not found. Please check your libxml2 installation.
$ yum install libxml2-devel mysql-server libjpeg-devel libpng-devel
$ ./configure --enable-mbstring --with-apxs2=/usr/local/apache-2.4.9/bin/apxs --enable-pdo --with-gd --with-png-dir=/usr/local --with-jpeg-dir=/usr/local $ make && make install
make: *** [ext/fileinfo/libmagic/apprentice.lo] エラー 1
うえ!!?
どうやらメモリが足りないらしい。。。orz
$ free -m total used free shared buffers cached Mem: 590 161 428 0 8 25 -/+ buffers/cache: 128 461 Swap: 0 0 0
すくな!!!!orz
取り敢えず、落とせるだけリソースを確保
# Apacheの停止 $ apachectl stop # メモリを増やしてみる。 $ ulimit -v 131072
もっかい、make
virtual memory exhausted: メモリを確保できません make: *** [ext/fileinfo/libmagic/apprentice.lo] エラー 1
うぬぬぬ・・・
freeみたら、swapが全く0になので
swapを拡張
$ dd if=/dev/zero of=/swap bs=1024 $ chmod 600 /swap
スワップファイルの初期化
$ mkswap /swap 256000 mkswap: /swap: warning: don't erase bootbits sectors on whole disk. Use -f to force. # スワップ空間バージョン1を設定します、サイズ = 255996 KiB
なんかでた。けど、warningなんで、シカト。
スワップの有効化
$ swapon /swap
free で確認してみる
$ free -m total used free shared buffers cached Mem: 590 439 150 0 10 293 -/+ buffers/cache: 135 454 Swap: 249 0 249
増えてるお。
もっかいmake
virtual memory exhausted: メモリを確保できません make: *** [ext/fileinfo/libmagic/apprentice.lo] エラー 1
( ゚∀゚)・∵. グハッ!!
でも、見た感じ、swapは使われてないっぽい。
ulimitを拡張
$ ulimit -l 512000
実行!
・・・
ダメぽorz
色々探していると、「--disable-fileinfo」を加えてみてはという記事にであった。
というわけ、付与
$ ./configure --enable-mbstring --with-apxs2=/usr/local/apache-2.4.9/bin/apxs --enable-pdo --with-gd --with-png-dir=/usr/local --with-jpeg-dir=/usr/local --disable-fileinfo $ make && make install
さて・・・結果は・・・・
Build complete. $ make test ===================================================================== PHP : /usr/local/src/php-5.5.13/sapi/cli/php PHP_SAPI : cli PHP_VERSION : 5.5.13 ZEND_VERSION: 2.5.0 PHP_OS : Linux - Linux ip-xxx-xxx-xxx-xxx 2.6 #1 SMP Mon Apr 23:59:59 EST 2099 x86_64 INI actual : /usr/local/src/php-5.5.13/tmp-php.ini More .INIs : CWD : /usr/local/src/php-5.5.13 Extra dirs : VALGRIND : Not used =====================================================================
(´;ω;)b
テストも無事完了したもよう。
ちなみに、うれし泣きじゃありません。
PHPのコンパイルだけで、1時間半かかったお!!!!
※どうしてApacheとこんなにちがうん?ソース量?今度調べてみようと思う。
※ちなみに、Apacheは10分くらい(こっちも遅い。。。)
※「make test」は一時間ぐらい。。。orz
スペックの小さいところでのmakeって意味では勉強になりましたが、
もうmicroインスタンスでは検証しません。
あと、このあと回避できないエラーが。。。orz
もうダメぽ。
でたエラーは下記(全くわからん。。。)
[mpm_event:crit] [pid 597:tid 140633025001216] (22)Invalid argument: ap_queue_pop failed [mpm_event:crit] [pid 597:tid 140633035491072] (22)Invalid argument: ap_queue_pop failed [mpm_event:alert] [pid 595:tid 140633328731904] AH02324: A resource shortage or other unrecoverable failure was encountered before any child process initialized successfully... httpd is exiting!