从源码手动编译 PHP 时出现如下错误:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
:
:
o
:
o
:
o
:
o
:
o
x86_64
)
1
|
解决办法
MakeFile 里面找到类似下面这一行:
|
1
|
lcrypto
|
删除所有的 -lssl 和 -lcrypto 然后添加 libssl.dylib 和 libcrypto.dylib 的路径(如果你安装了 brew,那么则是 /usr/local/opt/openssl/lib/),重新运行 make 命令,done。
附上我修改后的 MakeFile EXTRA_LIBS 那一行:
|
1
|
dylib
|
The Makefile has a line with EXTRA_LIBS, something like:
EXTRA_LIBS = -lresolv -lmcrypt -lltdl -liconv-lm -lxml2 -lcurl -lssl -lcrypto
Remove all occurrences of -lssl and -lcrypto and add the full path to libssl.dylib and libcrypto.dylib (brew links openssl to /usr/local/opt/openssl/lib/)
EXTRA_LIBS = -lresolv -lmcrypt /usr/local/opt/openssl/lib/libssl.dylib /usr/local/opt/openssl/lib/libcrypto.dylib -lltdl -liconv-lm -lxml2 -lcurl