| .. | ||
| src | ||
| .cargo_vcs_info.json | ||
| Android.bp | ||
| Cargo.lock | ||
| Cargo.toml | ||
| Cargo.toml.orig | ||
| LICENSE | ||
| LICENSE.txt | ||
| METADATA | ||
| MODULE_LICENSE_MIT | ||
| NOTICE | ||
| OWNERS | ||
| README.android | ||
| README.md | ||
protobuf-codegen
This crate contains protobuf code generator and a protoc-gen-rust protoc plugin.
protoc-gen-rust
protoc-gen-rust implements standard protobuf protoc plugin conventions.
Probably you do not want to use it directly in Rust environment, there are easier to use alternatives:
- protoc-rust crate
which can be invoked programmatically from
build.rsof your project which requires onlyprotocin$PATHbut notprotoc-gen-rust. - protobuf-codegen-pure crate
which behaves like protoc-rust, but does not depend on
protocbinary
But if you really want to use that plugin, here's the instruction
(Note protoc can be invoked programmatically with
protoc crate)
- Install protobuf for
protocbinary.
On OS X Homebrew can be used:
brew install protobuf
On Ubuntu, protobuf-compiler package can be installed:
apt-get install protobuf-compiler
Protobuf is needed only for code generation, rust-protobuf runtime
does not use protobuf library.
- Install
protoc-gen-rustprogram (which isprotocplugin)
It can be installed either from source or with cargo install protobuf command.
- Add
protoc-gen-rustto $PATH
If you installed it with cargo, it should be
PATH="$HOME/.cargo/bin:$PATH"
- Generate .rs files:
protoc --rust_out . foo.proto
This will generate .rs files in current directory.