php7.2.0-devをビルドしてみます。
opcacheとfpmを有効にします。
※2016年12月15日現在
■事前準備
必要そうなパッケージを入れておきます。
WordPressでMySQL使ったり、zabbixでグラフの画像作ったりする想定です。
不要なものは外してください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
sudo yum groupinstall -y 'Development Libraries' sudo yum groupinstall -y 'Development Tools' sudo yum insall \ libpng-devel \ freetype-devel \ libmcrypt-devel \ libicu-devel \ libxslt-devel \ libcurl-devel.x86_64 \ gd.x86_64 \ gd-devel.x86_64 \ gmp-devel.x86_64 \ bzip2-devel.x86_64 \ libwebp.x86_64 \ libwebp-devel.x86_64 \ readline-devel.x86_64 \ net-snmp-devel.x86_64 \ libtidy-devel.x86_64 |
■php7.2.0-devをビルドする
https://github.com/php/php-src
こちらからgit cloneしてビルドします。
※mbstring、fpm、opcacheを有効にする
※–enable-gd-jis-convを付けると、GDで文字化けするので入れない
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
git clone https://github.com/php/php-src cd php-src/ ./buildconf --force ./configure \ --prefix=/usr/local \ --with-zlib \ --with-mcrypt \ --with-gd \ --with-curl \ --with-gettext \ --with-gmp \ --with-openssl \ --with-pcre-regex \ --with-bz2 \ --with-webp-dir \ --with-jpeg-dir \ --with-png-dir \ --with-xpm-dir \ --with-freetype-dir \ --with-onig \ --with-readline \ --with-snmp \ --with-tidy \ --with-xsl \ --with-gnu-ld \ --enable-exif \ --enable-intl \ --enable-pcntl \ --enable-soap \ --enable-wddx \ --enable-mbstring \ --enable-fpm \ --enable-opcache \ --enable-bcmath \ --enable-sockets \ --enable-zip \ --enable-mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-mysql-sock=/var/lib/mysql/mysql.sock make sudo make install |
ここまでやっておいてごめんなさい。
t2.nano だとメモリ不足でmakeでこけました。
一時的にt2.microにあげてビルド通して、t2.nanoに戻しました。
止められるサービスを全部停止してもダメだった。
敗北感。
■php.ini を作成
サンプルをコピーして、/usr/local/lib/php.ini を作成します。
1 |
sudo cp -p php.ini-development /usr/local/lib/php.ini |
タイムゾーンをAsia/Tokyoにしたり、文字コードをUTF-8にしたり、opchacheを有効にしたりしました。
疲れてきました。
■自動起動の設定
あとは php-fpm を自動起動するよう設定します。
ソースディレクトリのsapiの中にサンプルがあるのでコピーして調整します。
1 2 3 4 |
sudo cp -p sapi/fpm/init.d.php-fpm.in /etc/inet.d/php-fpm sudo chkconfig --add php-fpm sudo chkconfig php-fpm on sudo service php-fpm start |
これで動いたらおっけー。