Как использовать gRP C из PHP и Windows 10 с "grpc_php_plugin"? - PullRequest
1 голос
/ 09 апреля 2020

При попытке использовать gRP C из Windows с PHP я мог найти Windows двоичные файлы для "proto c .exe" и "php_grp c .dll", но я не был смог найти любой "grpc_php_plugin" (exe или dll?) и, таким образом, не смог использовать gRP C из Windows / PHP.

Страница документации:

https://grpc.io/docs/quickstart/php/

Текущая документация по вышеуказанному пакету unix -ориентирована (с путями "make grpc_php_plugin" и "bins / opt" в флагах, таких как --plugin = proto c - gen-grpc = bins / opt / grpc_php_plugin).

Однако похоже, что Windows должно поддерживаться, поскольку на странице упоминается «Установка на Windows. Вы можете загрузить предварительно скомпилированный grp * Расширение 1050 * .dll с веб-сайта PECL. "

С другой стороны, если доступны только два из трех необходимых двоичных файлов, этого недостаточно, поскольку, насколько я понимаю, следующие три двоичных файла необходимы:

  • "proto c .exe" (действительно доступен в "proto c -3.11.4 -win64.zip ")
  • " php_grp c .dll "(действительно доступен в " php_grp c -1.28.0-7.4-nts-vc15-x64.zip ") (и я использую 64 бит Windows 10 с nts / non-thread-safe PHP 7.4.4)
  • " grpc_php_plugin "(exe или dll?) NOT (?) доступно для Windows?

При попытке использовать пример на странице быстрого запуска вы найдете следующую команду:

protoc --proto_path=examples/protos --php_out=examples/php --grpc_out=examples/php --plugin=protoc-gen-grpc=bins/opt/grpc_php_plugin ./examples/protos/helloworld.proto

Проблема в флаге плагина "--plugin = proto c -gen-grpc = bins / opt / grpc_php_plugin".

При использовании Windows вы не скомпилировали с помощью "make grpc_php_plugin", но вам необходимо загрузить двоичный файл для Windows и поместите его в путь Windows вместо "bins / opt / grpc_php_plugin".

Так что, если кто-то действительно мог использовать gRP C для PHP с Windows 10, а затем, пожалуйста, объясните, чтобы заставить его работать с "grpc_php_plugin", который, кажется, необходим, но недоступен.

...