LAMP 之三 PHP 编译安装
先到 PHP 官网下载Discux 3.2 的官方版本不支持 php-7.0.8 的版本。到安装的时候会有函数不支持。如下图。
https://s5.运维网.com/wyfs02/M01/91/E8/wKioL1j5bYHg8QtHAABkLYMnMes606.jpgBird src]# wget http://cn2.php.net/distributions/php-7.0.8.tar.gz
解压
# tar zxvf php-7.0.8.tar.gz
下载的文件格式不一样,解压的方式不一样
php 版本不一样,但是安装过程是一样的。继续使用文档。
进入解压的目录:
# cd php-7.0.8
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
# ./configure \
> --prefix=/usr/local/php \
> --with-apxs2=/usr/local/apache2/bin/apxs \
> --with-config-file-path=/usr/local/php/etc\
> --with-mysql=/usr/local/mysql \
> --with-libxml-dir \
> --with-gd \
> --with-jpeg-dir \
> --with-png-dir \
> --with-freetype-dir \
> --with-iconv-dir \
> --with-zlib-dir \
> --with-bz2 \
> --with-openssl \
> --with-mcrypt \
> --enable-soap \
> --enable-gd-native-ttf \
> --enable-mbstring \
> --enable-sockets \
> --enable-exif \
> --disable-ipv6
(楼主将系统yum 源换成了 163 上的的yum 源,具体操作,问度娘)
在此过程中会出现一些错误,这是因为PHP 依赖一些包。
在这一步,楼主遇到如下错误:
configure: error: xml2-config not found. Please check your libxml2 installation.解决办法是:
yum install -y libxml2-devel还有错误:
configure: error: Cannot find OpenSSL's 解决办法是:
yum install -y openssl openssl-devel错误:
checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution解决办法:
yum install -y bzip2 bzip2-devel错误:
configure: error: png.h not found.解决办法:
yum install -y libpng libpng-devel错误:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.解决办法:
yum install -ylibmcrypt-devel
出现 Configure: error: freetype.h not found.的解决办法
yum install freetype-devel
https://s4.运维网.com/wyfs02/M01/91/A4/wKioL1j3MefCIn-uAAEWtleu8g0290.jpg
# echo $?
0
# make这个过程大约5分钟
Build complete.
Don't forget to run 'make test'. 出现这个说明这一步操作完成
https://s1.运维网.com/wyfs02/M00/91/A5/wKioL1j3Mt6jb_zFAACXtlLano8693.jpg
# make install#此处有个警告,不知道什么原因?但是echo $? 显示正常
https://s4.运维网.com/wyfs02/M02/91/A6/wKiom1j3M4SzOz1ZAAEpf9-HiFg320.jpg
echo $? 至上安装完成。
--with-apxs2=/usr/local/apache2/bin/apxsapxs 是一个自动的帮助用户安装扩展模块的工具。
--with-mysql=/usr/local/mysql这里可以看出Php 也是依赖 Mysql 的,所以这就是为什么要先安装Mysql ,而最后安装Php.
###########################################################################################
# ls /usr/local/apache2/modules/
httpd.explibphp7.somod_deflate.somod_expires.somod_rewrite.so
这个目录下多了一个 libphp7.so,而这个 libphp7.so 是怎么产生过来的,就是因为 apxs,apxs帮助生了这个文件。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Php 小技巧
# /usr/local/php/bin/php -m查看 php 下面的模块
查看到的都是静态的
# /usr/local/php/bin/php -i查看PHP 相关的配置
页:
[1]