swoole/phpx

install cpp_ext.so error

neagle2009 opened this issue · 1 comments

PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/cpp_ext.so' - /usr/local/lib/libphpx.so: undefined symbol: json_globals in Unknown on line 0

/workspace/php/PHP-X$ php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/cpp_ext.so' - /usr/local/lib/libphpx.so: undefined symbol: json_globals in Unknown on line 0
PHP 7.1.8-1ubuntu1 (cli) (built: Aug 8 2017 15:57:37) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.1.8-1ubuntu1, Copyright (c) 1999-2017, by Zend Technologies

=========================
找到问题了, 加载顺序问题, 应该先加载json.so

同样碰到这个问题。感谢给出解决办法!
在这里记录一下我的详细操作:
新增一个cpp_ext拓展的配置文件

vi /etc/php/7.1/mods-available/cpp_ext.ini

# 这里是文件内容
extension=cpp_ext.so

在cli以及php-fpm目录下创建一个软连接:

ln -s /etc/php/7.1/mods-available/cpp_ext.ini /etc/php/7.1/fpm/conf.d/25-cpp_ext.ini
ln -s /etc/php/7.1/mods-available/cpp_ext.ini /etc/php/7.1/cli/conf.d/25-cpp_ext.ini

这样的话就可以最后再加载cpp_ext拓展