解决Mac OS编译安装时出现 cannot find openssl's 错误的问题

时间:2021-01-11 12:49:52

踩坑

最近通过pecl安装mongodb扩展时,提示以下错误

......
configure: error: Cannot find OpenSSL's <evp.h>
......

根据提示,通过以下方式安装openssl后,再次使用pecl安装mongodb,仍然是提示同样的错误

brew install openssl

问题解决

通过pecl安装的路走不通,还是得通过简单暴力方式解决,使用源码包通过编译方式进行安装

1、编译安装前先安装autoconf

brew install autoconf

2、下载源代码包后,在终端进入源码目录,执行下面的命令进行编译和安装

cd mongodb

phpize

./configure --with-openssl-dir = /usr/local/Cellar/openssl/1.0.2j make sudo make install

3、编译安装成功后,修改php.ini加入

extension = mongodb.so;

总结

  1. 通过编译安装时指定openssl的路径进行解决

  2. 可以使用php -i | grep php.ini来定位到php.ini的绝对路径。