出现这个问题的原因
ssl需要依赖openssl,必须在编译swoole时启用–enable-openssl
代码语言:javascript复制1. 确认是否安装了 openssl
如果没有安装,先安装,如果已经安装,则看第二步
2. 确认 openssl 库是否在标准位置中
既然出现了错误当然就是没有在标准的位置
查看openssl位置
执行命令:
代码语言:javascript复制openssl version -a
展示如下:
代码语言:javascript复制OpenSSL 1.1.1g 21 Apr 2020
built on: Tue Apr 21 13:30:00 2020 UTC
platform: darwin64-x86_64-cc
options: bn(64,64) rc4(16x,int) des(int) idea(int) blowfish(ptr)
compiler: clang -fPIC -arch x86_64 -O3 -Wall -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_REENTRANT -DNDEBUG
OPENSSLDIR: "/usr/local/etc/openssl@1.1"
ENGINESDIR: "/usr/local/Cellar/openssl@1.1/1.1.1g/lib/engines-1.1"
Seeding source: os-specific
找到 OPENSSLDIR
就ok啦~
文件拷贝方案
找到你们的openssl文件夹,把它拷贝到swoole安装包下的include下面,技术是openssl的所有.h文件,我的openssl文件的目录为/usr/local/opt/openssl/include 把这个路径下的openssl文件夹copy到安装文件夹中的include下就ok了。
打赏赞微海报分享