使用mac的brew安装软件,有时会出现安装失败,或显示安装成功,但不能正常使用的情况。
例如安装php56-redis扩展,显示安装成功,重启后查看phpinfo看不到redis扩展信息。
命令行执行php有以下错误
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/opt/php56-redis/redis.so' - dlopen(/usr/local/opt/php56-redis/redis.so, 9): Symbol not found: _basic_globals Referenced from: /usr/local/opt/php56-redis/redis.so Expected in: flat namespace in /usr/local/opt/php56-redis/redis.so in Unknown on line 0Warning: PHP Startup: Unable to load dynamic library '/usr/local/opt/php56-redis/redis.so' - dlopen(/usr/local/opt/php56-redis/redis.so, 9): Symbol not found: _basic_globals Referenced from: /usr/local/opt/php56-redis/redis.so Expected in: flat namespace in /usr/local/opt/php56-redis/redis.so in Unknown on line 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
估计是php编译的版本不兼容导致
解决方法:在安装命令中加入参数
--build-from-source
- 1
这个参数表示从源开始编译,默认会采用bottle方式安装,bottle方式就是安装已编译好的二进制包
brew install php56-redis --build-from-source
- 1
其他软件,例如nginx安装出现问题,都可以使用此方法解决。
brew install nginx --build-from-source
- 1
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow