- php7 源码安装
- 编译参数
- 编译
- 配置PHP
- configure时的常见错误
- xml2-config not found
- 如果出现 error: Cannot find OpenSSL’s
- Please reinstall the BZip2 distribution
- Please reinstall the libcurl distribution
- jpeglib.h not found
- png.h not found
- xpm.h not found
- Unable to locate gmp.h
- mcrypt.h not found. Please reinstall libmcrypt.
- Please reinstall the mysql distribution
- Cannot find pspell
- Can not find recode.h anywhere under /usr /usr/local /usr /opt.
php7 源码安装
wget http://cn2.php.net/distributions/php-7.0.2.tar.gz
cd php-7.0.2
1.1编译前检查
请检查是否安装了gcc ,没有的话执行yum install gcc
检查是否安装了libxml2 ,没有的话执行yum install libxml2
检查是否安装了libxml2-devel,没有的话执行yum install libxml2-devel
编译参数
'./configure' '--prefix=/usr/local/php' '--with-pdo-pgsql' '--with-zlib-dir' '--with-freetype-dir' '--enable-mbstring' '--with-libxml-dir=/usr' '--enable-soap' '--enable-calendar' '--with-curl' '--with-mcrypt' '--with-gd' '--with-pgsql' '--disable-rpath' '--enable-inline-optimization' '--with-bz2' '--with-zlib' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-pcntl' '--enable-mbregex' '--enable-exif' '--enable-bcmath' '--with-mhash' '--enable-zip' '--with-pcre-regex' '--with-pdo-mysql' '--with-mysqli' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-openssl' '--with-fpm-user=www-data' '--with-fpm-group=www-data' '--with-libdir=/lib/x86_64-linux-gnu/' '--enable-ftp' '--with-gettext' '--with-xmlrpc' '--with-xsl' '--enable-opcache' '--enable-fpm' '--with-iconv' '--with-xpm-dir=/usr'
编译
make clean && make && make install
略久
配置PHP
安装完成后,我们要把源码包中的配置文件复制到PHP安装目录下,源码包中有两个配置 php.ini-development php.ini-production ,看名字就知道,一个是开发环境,一个是生产环境,我们这里就复制开发环境的
cp php.ini-development /usr/local/php/etc/php.ini //etc 目录php配置文件目录
执行命令
source /etc/profile
配置PHP-fpm
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp /usr/src/php-7.0.2/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
configure时的常见错误
xml2-config not found
如果configure时出现 error: xml2-config not found. 错误,那么要行安装libxml2-dev
Debian/Ubuntu
sudo apt-get install libxml2-dev
CentOS
sudo yum install libxml2-devel
如果出现 error: Cannot find OpenSSL’s
Please reinstall the BZip2 distribution
CentOS:
sudo yum install bzip2-devel
Debian/Ubuntu
sudo apt-get install libbz2-dev
Please reinstall the libcurl distribution
CnetOS
sudo yum install curl-devel
jpeglib.h not found
CentOS
sudo yum install libjpeg-devel
Debian/Ubuntu
sudo apt-get install libjpeg-dev
png.h not found
CentOS
sudo yum install libpng-devel
Debian/Ubuntu
sudo apt-get install libpng-dev
xpm.h not found
CentOS
sudo yum install libXpm-devel
Debian/Ubuntu
sudo apt-get install libxpm-dev
freetype-config not found
CentOS
sudo yum install freetype-devel
Debian/Ubuntu
sudo apt-get install libfreetype6-dev
Unable to locate gmp.h
CentOS
sudo yum install gmp-devel
Debian/Ubuntu
sudo apt-get install libgmp-dev libgmp3-dev
ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
mcrypt.h not found. Please reinstall libmcrypt.
CentOS
sudo yum install libmcrypt-devel
Debian/Ubuntu
sudo apt-get install libmcrypt-dev
Please reinstall the mysql distribution
CentOS
sudo yum install mysql-devel
Debian/Ubuntu
sudo apt-get install libmysqlclient15-dev
Cannot find pspell
CentOS
sudo yum install aspell-devel
Debian/Ubuntu
sudo apt-get install libpspell-dev
Can not find recode.h anywhere under /usr /usr/local /usr /opt.
CentOS
sudo yum install recode-devel -y
Debian/Ubuntu
sudo apt-get install librecode-dev