mac下 php5.6安装mongo 以及 openssl 和 libgcc_s.10.5 报错解决方案
1 下载地址
http://pecl.php.net/package/mongo
2 解压
sudo tar -xzf mongo-1.6.16.tgz.tgz
3 进入解压目录执行命令
cd mongo-1.6.16.tgz
sudo phpize
4 检查
sudo ./configure --with-php-config=/usr/local/Cellar/php@5.6/5.6.40/bin/php-config
其中php-config为当前安装的php5.6的位置 也可以是软链接
5 编译安装
sudo make
sudo make install
6 修改php.ini配置文件
加上extension=monogo
7 重启nginx
sudo nginx -s reload
执行php -m | grep monogo => monogo
8 重启php-fpm
sudo killall php-fpm
sudo php-fpm
phpinfo()
--------------
说说安装过程中遇到的问题,主要有两个 一个是openssl 另一个就是最苦逼的 libgcc_s.10.5的库没有
---------
1 报错 error: Cannot find OpenSSL's <evp.h>
这个是检查的时候没有找到OpenSSL的地址,只需要在检查的时候指明openssl的地址即可
加上 --with-openssl-dir=/usr/local/Cellar/openssl/1.0.2s 这是我当前openssl安装的地址,每个人可能安装的不同,需要更改
全部命令
sudo ./configure --with-php-config=/usr/local/Cellar/php@5.6/5.6.40/bin/php-config --with-openssl-dir=/usr/local/Cellar/openssl/1.0.2s
2 libgcc_s.10.5的库不存在
sudo find / -name '*libgcc_s*' 查看有没有这个库 (安装的gcc版本不同或其他相关联的版本不同导致这个库不存在)
(1)有的话可以直接一个软连接 链接到 /usr/local/lib/ 链接名称就叫 libgcc_s.10.5.dylib即可 (可能解决问题,我的情况是这个文件压根不存在)
(2)没有这个文件,发现 存在 /usr/local/Cellar/gcc@8/8.3.0/lib/gcc/8/libgcc_s.1.dylib 这个文件
直接进入 /usr/local/lib/ 生成一个libgcc_s.1.dylib 文件的软连接 libgcc_s.10.5.dylib
命令:
cd /usr/local/lib/
ln -s /usr/local/Cellar/gcc@8/8.3.0/lib/gcc/8/libgcc_s.1.dylib libgcc_s.10.5.dylib
重新检查编译,问题解决。!!!!