Как скомпилировать файл.proto + .options с помощью nanopb
Я написал файл.options и поместил его в тот же каталог, что и файл.proto. Затем я попытался скомпилировать его (используя компилятор nanopb) с помощью команды
generator-bin/protoc --nanopb_out=. message.proto -s message.options
и получил эту ошибку:
Unknown flag: -s
так что я делаю не так? мне нужно импортировать файл опций в файл.proto? Что-нибудь еще, что я должен сделать, чтобы это работало?
1 ответ
Google-х protoc
имеет специальный синтаксис для передачи параметров в плагины. Параметры плагина выставляются в качестве аргумента nanopb_out
и отделен от фактического пути назначения двоеточием (:
).
generator-bin/protoc '--nanopb_out=-v -f message.options:.' message.proto
Однако, если ваш .options
файл имеет то же имя, что и .proto
и находится в том же каталоге, плагин Nanopb должен автоматически найти и использовать его.
Также обратите внимание, что -s
флаг nanopb ожидает пару настроек в командной строке, а -f
принимает имя файла Определение -v
также полезно получать подробные сообщения вне зависимости от того, загружен файл опций или нет. Вы можете получить полный список параметров командной строки, выполнив:
generator-bin/nanopb_generator --help