Lew*_*ith 5 php ubuntu grpc ubuntu-20.04
使用 PHP 7.4 和 Ubuntu 20.04 LTS
我已经使用以下步骤安装了 GRPC:
sudo apt-get install autoconf zlib1g-dev php-dev php-pear
sudo pecl install grpc
Run Code Online (Sandbox Code Playgroud)
cli然后我将以下行添加到显示的文件夹中fpm
extension=grpc.so
/etc/php/7.4/cli/php.ini
/etc/php/7.4/fpm/php.ini
Run Code Online (Sandbox Code Playgroud)
当我运行时,php出现以下错误:
PHP Warning: PHP Startup: Unable to load dynamic library 'grpc.so' (tried: /usr/lib/php/20190902/grpc.so (/usr/lib/php/20190902/grpc.so: cannot open shared object file: No such file or directory), /usr/lib/php/20190902/grpc.so.so (/usr/lib/php/20190902/grpc.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)
安装后pecl输出已经安装在这里:
/usr/lib/php/20200930/grpc.so
Run Code Online (Sandbox Code Playgroud)
为了变得聪明,我想我可以将文件复制到 php 期望的位置:
sudo cp /usr/lib/php/20200930/grpc.so /usr/lib/php/20190902/grpc.so
Run Code Online (Sandbox Code Playgroud)
但是当你运行php后你会得到以下信息:
PHP Warning: PHP Startup: grpc: Unable to initialize module
Module compiled with module API=20200930
PHP compiled with module API=20190902
These options need to match
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
小智 5
使用以下命令安装
sudo pecl -d php_suffix=8.1 install grpc
Run Code Online (Sandbox Code Playgroud)
最初我有 php7.4 和 php8.1 版本。默认版本是 php8.1,并尝试安装相同的版本。但由于某种原因,它安装在错误的文件夹中(/usr/lib/php/20200930/grpc.so)。删除 php7.4 没有帮助。
安装特定于 php8.1 解决了这个问题。
确保删除所有以前的版本
sudo pecl uninstall grpc
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1775 次 |
| 最近记录: |