Mac下安装swoole的艰辛历程2020-02-25

一、环境

mac自带的PHP是7.1.16,后来用brew自己安装的是7.4.3给7.4.3安装swoole扩展

二、问题描述

1、描述:

    只要是--enable-openssl的话,编译安装和brew安装都报错。不开启ssl的话编译安装是可以的,但安装后没有openssl扩展

2、报错:

PHP Warning: PHP Startup: Unable to load dynamic library 'swoole.so' (tried: /usr/local/lib/php/20190902/swoole.so (dlopen(/usr/local/lib/php/20190902/swoole.so, 9): image not found), /usr/local/lib/php/20190902/swoole.so.so (dlopen(/usr/local/lib/php/20190902/swoole.so.so, 9): image not found)) in Unknown on line 0

三、寻找问题

   1、 初步定位问题:应该是在openssl扩展上。

    2、用brew search openssl命令查看,果然有个文件openssl@1.1,这个是之前报错时查找解决方案说是没安装openssl导致的,所以用brew安装了一下openssl(其实之前有openssl,重新安装了个高版本的)


3、定位问题:

    在/usr/local/opt目录下查看,果然有两openssl,应该是openssl路径的问题。


四、解决

    删除之前安装的文件,重新进行编译安装,在安装时指明openssl的路径

./configure --with-php-config=/usr/local/bin/php-config --enable-openssl CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"  LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"

完成用php --ri swoole查看,openssl也有了

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容