mac安装PHP7时可能会遇到哪些具体问题?

2026-04-03 11:271阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计896个文字,预计阅读时间需要4分钟。

mac安装PHP7时可能会遇到哪些具体问题?

背景:近期在Mac上使用Workerman,由于Workerman需要开启多个进程,多进程需要PCntl扩展的支持。我之前安装的php71没有这个扩展。

解决方案:直接卸载了php71,然后下载源码编译安装了php7,解决了PCntl扩展的问题。

mac安装PHP7时可能会遇到哪些具体问题?

背景

前几天在mac上跑workrman,由于workerman需要开启多个进程,多进程需要pcntl扩展的支持,我之前那个brew安装的php71没有这个扩展,就直接卸载了php71,然后想下载源码编译安装php7的更高版本,也可以更自由的安装扩展。

源码编译安装(php-7.2.7)

问题一

configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --enable-fpm configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-mysqli configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-pdo-mysql configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-iconv-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-eeeetype-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-zlib configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-jpeg-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-png-dir configure: error: invalid variable name: ` --with-libxml-dir'

解决:都是因为—with前面多了个空格

问题二

Sorry, I cannot run apxs. Possible reasons follow: 1. Perl is not installed 2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs 3. Apache was not built using --enable-so (the apxs usage page is displayed)

解决办法

brew install httpd find / -name apxs Centos下执行 yum install -y httpd-devel

查找到apxs文件路径,然后修改编译参数如下

--with-apxs2=/usr/local/bin/apxs

问题三

checking if the location of ZLIB install directory is defined... no ; configure: error: Cannot find libz.

解决办法

brew install zlib find / -name lib

加上参数

--with-zlib-dir=/usr/local/Cellar/zlib/1.2.11

问题四

configure: error: Cannot locate header file libintl.h

原因是没有gettext

解决办法:

$PHP_GETTEXT /usr/local /usr; do

configure文件改为

for i in $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettext; do

问题五

configure: error: Please specify the install prefix of iconv with --with-iconv=<DIR>

解决办法,编译参数中加上

\--with-iconv=/usr/local/Cellar/libiconv/1.15

问题六

checking for libiconv in -liconv... no checking for iconv in -liconv... no configure: error: Please reinstall the iconv library.

最后解决到问题五的时候的编译安装命令如下:

./configure --prefix=/usr/local/php/7.2.7\—with-config-file-path=/usr/local/php/7.2.7/etc \--with-config-file-scan-dir=/usr/local/php/7.2.7/etc/conf.d \--with-apxs2=/usr/local/bin/apxs \--with-zlib-dir=/usr/local/Cellar/zlib/1.2.11 \--enable-fpm \--with-fpm-user=www \--with-fpm-group=www \--with-mysqli \--with-pdo-mysql \--with-iconv=/usr/local/Cellar/libiconv/1.15 \--with-eeeetype-dir \--with-zlib \--with-jpeg-dir \--with-png-dir \--with-libxml-dir=/usr/bin/xml2-config \--enable-xml \--disable-rpath \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--with-curl \--enable-mbregex \--enable-mbstring \--with-mcrypt \--enable-ftp \--with-gd \--enable-gd-native-ttf \--with-onsnssl \--with-mhash \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-zip \--enable-soap \--without-pear \--with-gettext \--disable-fileinfo \--enable-maintnener-zts \--enable-mysqlnd

brew安装

1.搜索brew中的php

brew search php

出现了:php@5.6 php@7.1 php@7.0

2.然后安装了php7.0

brew install php70

3.将php设置系统环境变量

find / -name php # 先找到php执行文件 cp /usr/local/Cellar/php@7.0/7.0.30_1/bin/php /usr/bin # 将php执行文件放到/usr/bin/文件夹中

最后

通过源码编译安装没有成功,还是brew install安装成功。

更多PHP7相关知识,请访问PHP7专题栏目!

本文共计896个文字,预计阅读时间需要4分钟。

mac安装PHP7时可能会遇到哪些具体问题?

背景:近期在Mac上使用Workerman,由于Workerman需要开启多个进程,多进程需要PCntl扩展的支持。我之前安装的php71没有这个扩展。

解决方案:直接卸载了php71,然后下载源码编译安装了php7,解决了PCntl扩展的问题。

mac安装PHP7时可能会遇到哪些具体问题?

背景

前几天在mac上跑workrman,由于workerman需要开启多个进程,多进程需要pcntl扩展的支持,我之前那个brew安装的php71没有这个扩展,就直接卸载了php71,然后想下载源码编译安装php7的更高版本,也可以更自由的安装扩展。

源码编译安装(php-7.2.7)

问题一

configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --enable-fpm configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-mysqli configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-pdo-mysql configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-iconv-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-eeeetype-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-zlib configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-jpeg-dir configure: WARNING: you should use --build, --host, --target configure: WARNING: invalid host type: --with-png-dir configure: error: invalid variable name: ` --with-libxml-dir'

解决:都是因为—with前面多了个空格

问题二

Sorry, I cannot run apxs. Possible reasons follow: 1. Perl is not installed 2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs 3. Apache was not built using --enable-so (the apxs usage page is displayed)

解决办法

brew install httpd find / -name apxs Centos下执行 yum install -y httpd-devel

查找到apxs文件路径,然后修改编译参数如下

--with-apxs2=/usr/local/bin/apxs

问题三

checking if the location of ZLIB install directory is defined... no ; configure: error: Cannot find libz.

解决办法

brew install zlib find / -name lib

加上参数

--with-zlib-dir=/usr/local/Cellar/zlib/1.2.11

问题四

configure: error: Cannot locate header file libintl.h

原因是没有gettext

解决办法:

$PHP_GETTEXT /usr/local /usr; do

configure文件改为

for i in $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettext; do

问题五

configure: error: Please specify the install prefix of iconv with --with-iconv=<DIR>

解决办法,编译参数中加上

\--with-iconv=/usr/local/Cellar/libiconv/1.15

问题六

checking for libiconv in -liconv... no checking for iconv in -liconv... no configure: error: Please reinstall the iconv library.

最后解决到问题五的时候的编译安装命令如下:

./configure --prefix=/usr/local/php/7.2.7\—with-config-file-path=/usr/local/php/7.2.7/etc \--with-config-file-scan-dir=/usr/local/php/7.2.7/etc/conf.d \--with-apxs2=/usr/local/bin/apxs \--with-zlib-dir=/usr/local/Cellar/zlib/1.2.11 \--enable-fpm \--with-fpm-user=www \--with-fpm-group=www \--with-mysqli \--with-pdo-mysql \--with-iconv=/usr/local/Cellar/libiconv/1.15 \--with-eeeetype-dir \--with-zlib \--with-jpeg-dir \--with-png-dir \--with-libxml-dir=/usr/bin/xml2-config \--enable-xml \--disable-rpath \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--with-curl \--enable-mbregex \--enable-mbstring \--with-mcrypt \--enable-ftp \--with-gd \--enable-gd-native-ttf \--with-onsnssl \--with-mhash \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-zip \--enable-soap \--without-pear \--with-gettext \--disable-fileinfo \--enable-maintnener-zts \--enable-mysqlnd

brew安装

1.搜索brew中的php

brew search php

出现了:php@5.6 php@7.1 php@7.0

2.然后安装了php7.0

brew install php70

3.将php设置系统环境变量

find / -name php # 先找到php执行文件 cp /usr/local/Cellar/php@7.0/7.0.30_1/bin/php /usr/bin # 将php执行文件放到/usr/bin/文件夹中

最后

通过源码编译安装没有成功,还是brew install安装成功。

更多PHP7相关知识,请访问PHP7专题栏目!