Как компилировать .proto файлы на линуксе?
Я скачал библиотеку grpc и утилиту proto c репозитория ubuntu. Как мне скомпилировать мой .proto файл??
Я нашел эту команду protoc -I ../../protos --grpc_out=. --plugin=protoc-gen-grpc=which grpc_cpp_plugin habr.proto, но я не знаю путь к директиве protos
.
Ответы (1 шт):
утилиту proto c репозитория ubuntu
неясно, что за пакет вы установили. предположим, что это был пакет protobuf-compiler
я не знаю путь к директиве protoc
вероятно, всё-таки не «к директиве», а «к программе». если установлен вышеупомянутый пакет, то в него входит программа /usr/bin/protoc. но указывать полный путь к ней вовсе не обязательно: так как каталог /usr/bin обычно входит в состав набора каталогов, содержащегося в переменной окружения $PATH, к ней можно обращаться просто по имени:
$ protoc <аргументы>
после правки вопроса
я не знаю путь к директиве protos
вероятно, имеется ввиду опция -Iпуть. выдержка из $ man protoc:
-IPATH, --proto_path=PATH
Specify the directory in which to search for imports. May be specified multiple times; directories will be searched in order. If not given, the current working directory is used.
если вы не знаете, какие именно файлы могут понадобиться программе protoc для интерпретации вашего файла habr.proto, то попробуйте запустить её без этой опции. программа должна написать вам, какие файлы ей не удалось найти, тогда можно будет и указать путь(-и) к этим файлам.
найти файл по его имени можно, например, с помощью программы find:
$ find / -name имя.файла 2>/dev/null