2017-08-24 68 views
2

我編寫了一個.options文件,並將它放在與.proto文件相同的目錄中。 然後,我試圖通過使用命令如何使用nanopb編譯.proto + .options文件

generator-bin/protoc --nanopb_out=. message.proto -s message.options 

編譯它(使用nanopb編譯器),並得到這個錯誤:

Unknown flag: -s 

所以我究竟做錯了什麼? 我是否需要在.proto文件中導入我的選項文件? 有什麼我應該做的,使其工作?

+1

檢查[這](https://groups.google.com/forum/#!topic/nanopb/9piO2wSecMI),我認爲這可以幫助你。 –

回答

0

谷歌的protoc有一個特殊的語法來將選項傳遞給插件。插件選項將作爲參數放入nanopb_out,並通過冒號與實際目標路徑分開(:)。

generator-bin/protoc '--nanopb_out=-v -f message.options:.' message.proto

但是,如果你的.options文件具有相同的名稱.proto並在同一目錄下,nanopb插件會自動找到並使用它。

另請注意,-s納米標誌的標誌需要命令行上的一對設置,而-f需要一個文件名。指定-v對於獲取是否加載選項文件的詳細消息也很有用。您可以通過運行得到的命令行選項完整列表:

generator-bin/nanopb_generator --help