コンパイルインストールphp 7
4735 ワード
原文にアクセスするには、スタック全体の技術交流グループ(QQグループ番号:254842154)に参加することもできます.
php 7のリリースからしばらく経ち、実行性能はHHVMに匹敵し、一部の環境ではHHVMを超えています.鸟の兄はphp 7の主要な开発者の1つで、php 7の来龙去脉についてみんなはこの文章を见ることができます:鸟の兄:PHP 7の発表の时にいくつかの话を书きます.php 7の新しい特性はこの文章を見ます:migration 70.new-features
準備作業
依存ライブラリファイルのインストール
php 7のインストール
phpの公式サイトでは、異なるバージョンのダウンロードリンクを見つけることができます.
設定、/usr/local/php 7というパスにインストール
コンパイル
make installのインストール
インストールに成功すると、次のような出力が表示されます.
libphp 7.soファイルを検索して、生成するかどうかを確認できます.
libphp 7.soが生成されていることがわかる.バージョンの表示もphp 7.0.5です.
コンフィギュレーション
プロファイル.phpのコンパイルディレクトリで、次のコマンドを実行します.
apacheのプロファイルが関連付けられているかどうかを確認します(一般的にphpのインストールが完了すると開き、開いていない場合は開きます)
次のコードを追加します.
コードを変更します.
AddTypeに次の2行を追加します.
注意事項
php 7のコンパイルで発生する可能性のある問題の1つはlibphp 7.soファイルを生成できないことです.これは以下のチェックを行うことができます.
1、configureに1つ欠けているかどうかを確認します.with-apxs 2、2を追加して、apacheプロファイルhttpd.confに次の構成が含まれているかどうかを確認します.SetHandlerアプリケーション/x-httpd-phpがあれば、3番目のステップを行います.そうしないと、3、再./configure+パラメータmake make installを追加して、インストールを再インストールして、--with-apxs 2を追加してください.
libphp 7.soを生成できないソリューションについては,周知のこの記事を参考にした.
参考記事
1、Linux環境PHP 7.0インストール2、php 7コンパイル後libphp 7.soなし
php 7のリリースからしばらく経ち、実行性能はHHVMに匹敵し、一部の環境ではHHVMを超えています.鸟の兄はphp 7の主要な开発者の1つで、php 7の来龙去脉についてみんなはこの文章を见ることができます:鸟の兄:PHP 7の発表の时にいくつかの话を书きます.php 7の新しい特性はこの文章を見ます:migration 70.new-features
準備作業
依存ライブラリファイルのインストール
yum groupinstall "Development tools"
yum install libxml2-devel gd-devel libmcrypt-devel libcurl-devel openssl-devel
php 7のインストール
phpの公式サイトでは、異なるバージョンのダウンロードリンクを見つけることができます.
//
wget http://cn2.php.net/distributions/php-7.0.5.tar.gz
//
tar -zxvf php-7.0.5.tar.gz
cd php-7.0.5
設定、/usr/local/php 7というパスにインストール
./configure --prefix=/usr/local/php7 \
--with-curl \
--with-freetype-dir \
--with-gd \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \
--with-mysqli \
--with-mysql \
--with-openssl \
--with-pcre-regex \
--with-pdo-mysql \
--with-pdo-sqlite \
--with-pear \
--with-png-dir \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--with-apxs2 \
--enable-fpm \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-gd-native-ttf \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-xml \
--enable-zip \
--enable-mysqlnd
コンパイル
make
make installのインストール
インストールに成功すると、次のような出力が表示されます.
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/
Installing PHP CLI binary: /usr/local/php/bin/
Installing PHP CLI man page: /usr/local/php/php/man/man1/
Installing PHP FPM binary: /usr/local/php/sbin/
Installing PHP FPM config: /usr/local/php/etc/
Installing PHP FPM man page: /usr/local/php/php/man/man8/
Installing PHP FPM status page: /usr/local/php/php/php/fpm/
Installing phpdbg binary: /usr/local/php/bin/
Installing phpdbg man page: /usr/local/php/php/man/man1/
Installing PHP CGI binary: /usr/local/php/bin/
Installing PHP CGI man page: /usr/local/php/php/man/man1/
Installing build environment: /usr/local/php/lib/php/build/
Installing header files: /usr/local/php/include/php/
Installing helper programs: /usr/local/php/bin/
program: phpize
program: php-config
Installing man pages: /usr/local/php/php/man/man1/
page: phpize.1
page: php-config.1
Installing PEAR environment: /usr/local/php/lib/php/
[PEAR] Archive_Tar - installed: 1.4.0
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util - installed: 1.3.0
[PEAR] PEAR - installed: 1.10.1
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/tmp/php-7.0.5/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers: /usr/local/php/include/php/ext/pdo/
libphp 7.soファイルを検索して、生成するかどうかを確認できます.
[root@hellojammy ~]# find / -name *php7*.so
/usr/lib64/httpd/modules/libphp7.so
[root@hellojammy ~]# php -version
PHP 7.0.5 (cli) (built: Apr 12 2016 13:30:14) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
libphp 7.soが生成されていることがわかる.バージョンの表示もphp 7.0.5です.
コンフィギュレーション
プロファイル.phpのコンパイルディレクトリで、次のコマンドを実行します.
cp php.ini-development /usr/local/php7/lib/php.ini
apacheのプロファイルが関連付けられているかどうかを確認します(一般的にphpのインストールが完了すると開き、開いていない場合は開きます)
vim /usr/local/apache/conf/httpd.conf
LoadModule php5_module /usr/lib64/httpd/modules/libphp7.so
次のコードを追加します.
SetHandler application/x-httpd-php
コードを変更します.
DirectoryIndex index.html index.shtml index.cgi index.php index.phtml index.php3
AddTypeに次の2行を追加します.
AddType application/x-httpd-php .php .php3 .phtml .inc
AddType application/x-httpd-php-source .phps
注意事項
php 7のコンパイルで発生する可能性のある問題の1つはlibphp 7.soファイルを生成できないことです.これは以下のチェックを行うことができます.
1、configureに1つ欠けているかどうかを確認します.with-apxs 2、2を追加して、apacheプロファイルhttpd.confに次の構成が含まれているかどうかを確認します.SetHandlerアプリケーション/x-httpd-phpがあれば、3番目のステップを行います.そうしないと、3、再./configure+パラメータmake make installを追加して、インストールを再インストールして、--with-apxs 2を追加してください.
libphp 7.soを生成できないソリューションについては,周知のこの記事を参考にした.
参考記事
1、Linux環境PHP 7.0インストール2、php 7コンパイル後libphp 7.soなし