Ubuntu 18.04的正确PHP版本中未安装GRPC扩展

2022-04-03 00:00:00 grpc ubuntu php

我正在尝试按照官方guidance

安装GRPC扩展

我遵循了所有步骤,但在最后这些步骤中,我得到了这个(我认为这一点稍后会很重要)

$ cd grpc/src/php/ext/grpc
$ phpize
$ ./configure
$ make
$ sudo make install

安装共享扩展:/usr/lib/php/20190902/

在这里,我检查了该文件夹,找到了grpc.so文件。

此时,我希望已经安装了扩展,我已经在php.ini(apache2和cli)中添加了extension=grpc.so。但它不起作用。

我尝试验证,但返回FALSE:var_dump(extension_loaded('grpc'));=>;bool(false)

现在,我检查了apache2日志文件,看到了以下内容:

PHP警告:PHP启动:无法加载动态库‘grpc.so’ (已尝试:/usr/lib/php/20180731/grpc.so(/usr/lib/php/20180731/grpc.so: 无法打开共享对象文件:没有这样的文件或目录), /usr/lib/php/20180731/grpc.so

可能的错误?

我认为,安装GRPC扩展后,它安装在/usr/lib/php/20190902/中(如您之前所见)。但阿帕奇正在尝试在/usr/lib/php/20180731/grpc.so

中找到它

我不知道我做错了什么。我认为我编辑了正确的php.ini文件,因为当我编辑php_info()时,我得到的是:

Configuration File (php.ini) Path   /etc/php/7.3/apache2
Loaded Configuration File   /etc/php/7.3/apache2/php.ini
Scan this dir for additional .ini files /etc/php/7.3/apache2/conf.d

解决方案

我已经解决了。显然,pecl需要在PHP version我希望安装的位置上进行配置。是这样的,安装在我的latest版本7.4上。但我需要它在7.3版本中:

# cd ./grpc

# phpize7.3

# ./configure --with-php-config=/usr/bin/php-config7.3

# make clean

# make

# make install

相关文章