mac 系统下 编译 php7.1 报错及解决方式
在使用 configure
配置过程中报的错误。
$ ./configure --prefix=/usr/local/php7/ --enable-debug --enable-maintainer-zts --enable-mysqlnd --with-mysqli --with-openssl --enable-pcntl --enable-mbstring --with-curl --enable-fpm
问题一、 openssl问题
和openssl有关(当然,系统中已经安装了openssl)。报如下的错误:
checking for ..../pkg-config
error: Cannot find OpenSSL's <evp.h>
解决方法,
For compilers to find libressl you may need to set:
export LDFLAGS="-L/usr/local/opt/libressl/lib"
export CPPFLAGS="-I/usr/local/opt/libressl/include"
For pkg-config to find libressl you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/libressl/lib/pkgconfig"
问题二、 iconv问题
问题一解决之后,新的问题又来了。
error: Please specify the install prefix of iconv with --with-iconv=<DIR>
解决方法
$ brew install libiconv
先安装libiconv
,然后在configure
中指定--with-iconv
选项。如下
$ ./configure --prefix=/usr/local/php7/ --enable-debug --enable-maintainer-zts --enable-mysqlnd --with-mysqli --with-openssl --enable-pcntl --enable-mbstring --with-curl --enable-fpm --with-iconv=$(brew --prefix libiconv)
make 过程报错
SHLIB_DL_SUFFIX_NAME = so
"Makefile" 1713L, 277679C
_php_iconv_string in iconv.o
__php_iconv_strlen in iconv.o
__php_iconv_substr in iconv.o
__php_iconv_strpos in iconv.o
__php_iconv_mime_encode in iconv.o
__php_iconv_mime_decode in iconv.o
_php_iconv_stream_filter_dtor in iconv.o
...
"_libiconv_open", referenced from:
_php_iconv_string in iconv.o
__php_iconv_strlen in iconv.o
__php_iconv_substr in iconv.o
__php_iconv_strpos in iconv.o
__php_iconv_mime_encode in iconv.o
__php_iconv_mime_decode in iconv.o
_php_iconv_stream_filter_ctor in iconv.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
解决办法: 编辑 Makefile 找到 EXTRA_LIBS = 。。。 将 -liconv 替换成 /usr/local/Cellar/libiconv/1.16/lib/libiconv.dylib
可以根据自己系统的实际路径替换
相关文章
适用于 Windows 的 C 编译器
发布时间:2023/05/07 浏览次数:163 分类:C语言
-
一篇关于适用于 Windows 平台的不同 C 编译器的文章。这篇简短的文章讨论了可用于 Windows 平台 C 语言编程的不同编译器和 IDE。
在 Mac 上更新 Git
发布时间:2023/04/05 浏览次数:196 分类:Git
-
在 Git 上工作时,应该使用最新版本保持更新以获得它的最新功能。 本文将讨论如何在个人计算机上安装和更新最新版本的 Homebrew 和 Git。
在 Mac 上打开 Git Bash
发布时间:2023/03/31 浏览次数:398 分类:Git
-
在 Git 中管理版本号 Git 是开发人员使用的最受欢迎和最著名的免费版本控制系统,可帮助他们在团队中安全高效地处理各种程序。 他们可以轻松地跟踪自己的项目,而无需探究彼此的任务。
在 C++ 中解决控制达到终点的非虚函数错误
发布时间:2023/03/31 浏览次数:186 分类:C++
-
本文演示了如何在 C++ 中解决控制到达终点的非 void 函数错误。非 void 函数需要有一个返回类型。
在 PHP 中从 Hash_hmac() 和 Sha256 创建签名
发布时间:2023/03/29 浏览次数:63 分类:PHP
-
我们将创建基于字符串的密钥并将它们转换为秘密签名,我们将使用 hash_hmac() 方法和一些最常见的 HMAC 方法进行密码转换。我们还将使用 PHP 中的 sha256 和 hex2bin 和 bin2hex 函数创建一个复