一、编译安装
源码下载地址 http://cn2.php.net/downloads.php ,这里我们选择 php7.1.8
版本
1、下载解压
|
|
2、编译前检查
- 请检查是否安装了gcc ,没有的话执行
apt-get install gcc
注:因为改为用nginx了,所以编译参数中的–with-apxs2=/usr/bin/apxs去掉了,如果要配置apache用,安装PHP前,请先安装apache。*
apxs2表示使用apache2.0以上版本,apxs表示使用的apache1.0版本
3、配置参数
先安装mysql数据库,不然以后配置没有mysql,后面没法进行数据线上交互
./configure
是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
4、安装依赖库
出现错误
1、安装libxml2
configure: error: xml2-config not found. Please check your libxml2 installation.
apt-get install libxml2-dev #已经安装了libxml2
2、安装libssl-dev
configure: error: openssl not found. Please check your openssl installation.
apt-get install libssl-dev #已经安装了openssl
3、安装bzip2-dev
configure: error: Please reinstall the BZip2 distribution
apt-get install bzip2-dev #已经安装了bzip2
安装失败,网上找到得解决方案都是需要安装bzip2-dev,说明ubuntu16里面没有这个库。
下载源码 http://www.bzip.org/downloads.html 我用的版本是bzip2-1.0.6.tar.gz
tar -zxvf bzip2-1.0.6.tar.gz -C /usr/src
cd /usr/src/bzip2-1.0.6/
make && make install #源码中并没有configure
重新编译,不用增加新参数
4、安装libjpeg-dev
configure: error: jpeglib.h not found.
apt-get install libjpeg-dev
5、mysql、mysqli
还没有安装mysql
configure: error: Please reinstall the mysql distribution
--with-pdo-mysql=/usr/local/mysql #mysql安装目录,对mysql的支持
--with-mysqli=/usr/local/mysql/bin/mysql_config #mysqli文件目录,优化支持
--with-mysql-sock=/var/run/mysqld/mysqld.sock #mysql.sock目录
6、安装libpng-dev
configure: error: png.h not found.
apt-get install libpng-dev
7、安装libfreetype6-dev
configure: error: freetype-config not found.
apt-get install libfreetype6-dev
8、安装`libmcrypt-dev
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
apt-get install libmcrypt-dev
9、safe-mode和curlwrappers
configure: WARNING: unrecognized options: --enable-safe-mode, --with-curlwrappers
--enable-safe-mode #打开安全模式
--with-curlwrappers #运用curl工具打开url流
这是新版本的php已经不再支持这几个选项,默认就是开启的.删掉这两个配置选项重新编译
5、编译安装
这个需要等待一段时间
make clean && make && make install
Don't forget to run 'make test'. #测试
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
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 defconfig: /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
6、设置全局
vi ~/.bashrc
export = $PATH:/usr/local/php/bin
source ~/.bashrc
7、查看版本
php -v
PHP 7.1.8 (cli) (built: Aug 24 2017 23:17:53) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
说明安装成功
二、PHP-FPM
关于fpm,相信不用多说,用它来支持PHP是一个比较好的选择,PHP5.3.3开始就已经内置了php-fpm,所以PHP7里当然也有,只需要–enable-fpm一下就可以了
三、包安装
唯一的缺点就是不能安装可供选择的php版本apt-get install php
四、参考链接
php7编译,mysql支持 http://www.cnblogs.com/onlyfu/p/5051389.html
本文作者: William
本文链接: http://www.williamwqq.site/2017/08/24/php-install/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议 。转载请注明出处!