protobuf.nanopb
Provides support for protocol buffers for embedded systems. More...
| Since: | Qbs 1.18 | 
Properties
- compilerName : string
- compilerPath : string
- importPaths : pathList
- includePath : string
- libraryPath : string
- outputDir : string
- pluginName : string
- pluginPath : string
Detailed Description
The protobuf.nanopb module provides support for generating nanopb C headers and sources from proto definition files using the nanopb plugin for the protoc tool suitable for embedded systems.
A simple qbs file that uses protobuf can be written as follows:
CppApplication { Depends { name: "protobuf.nanopb" } files: ["foo.proto", "main.cpp"] }
A generated header now can be included in the C++ sources:
#include <foo.pb.h> int main(int argc, char* argv[]) { Foo bar; bar.has_answer = true; bar.answer = 42; return 0; }
Nanopb .options files to define nanopb specific proto options are supported.
Relevant File Tags
| Tag | Auto-tagged File Names | Since | Description | 
|---|---|---|---|
| "protobuf.input" | *.proto | 1.13.0 | Source files with this tag are considered inputs to the protoccompiler. | 
| "protobuf.hpp" | 1.18.0 | This tag is attached to the header files generated by protoccompiler. | 
Property Documentation
| compilerName : string | 
The name of the protoc binary.
Default: "protoc"
| compilerPath : string | 
The path to the protoc binary.
Use this property to override the auto-detected location.
Default: auto-detected
| importPaths : pathList | 
The list of imports that are passed to the protoc tool via the --proto_path option. These imports should contain the proto files. They are used to determine the relative structure of the generated files.
Note: The paths are passed to protoc in the same order as specified in this property and protoc output may differ depending on that order.
Default: []
| includePath : string | 
The path where protobuf nanopb C headers are located. Set this property to override the default location.
Default: auto-detected
| libraryPath : string | 
The path where the protobuf nanopb runtime library is located. Set this property to override the default location.
Default: auto-detected
| [read-only] outputDir : string | 
The directory where the protoc compiler generated files are placed.
The value of this property is automatically set by Qbs and cannot be changed by the user.
| pluginName : string | 
The name of the nanopb protoc plugin.
Default: "protoc-gen-nanopb"
| pluginPath : string | 
The path to the nanopb protoc plugin.
Use this property to override the auto-detected location.
Default: auto-detected