Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
src/ | H | 03-May-2022 | - | 5,298 | 4,596 | |
.cargo-checksum.json | H A D | 03-May-2022 | 89 | 1 | 1 | |
.cargo_vcs_info.json | H A D | 01-Jan-2020 | 74 | 6 | 5 | |
Cargo.lock | H A D | 01-Jan-2020 | 373 | 15 | 13 | |
Cargo.toml | H A D | 01-Jan-2020 | 1.2 KiB | 38 | 33 | |
Cargo.toml.orig-cargo | H A D | 01-Jan-2020 | 750 | 36 | 26 | |
README.md | H A D | 31-Dec-2019 | 1.6 KiB | 58 | 36 |
README.md
1# protobuf-codegen 2 3This crate contains protobuf code generator and a `protoc-gen-rust` `protoc` plugin. 4 5## protoc-gen-rust 6 7`protoc-gen-rust` implements standard protobuf `protoc` plugin conventions. 8 9Probably you do not want to use it directly in Rust environment, there are easier to use alternatives: 10 11* [protoc-rust crate](https://github.com/stepancheg/rust-protobuf/tree/master/protoc-rust) 12 which can be invoked programmatically from `build.rs` of your project 13 which requires only `protoc` in `$PATH` but not `protoc-gen-rust`. 14* [protobuf-codegen-pure crate](https://github.com/stepancheg/rust-protobuf/tree/master/protobuf-codegen-pure) 15 which behaves like protoc-rust, but does not depend on `protoc` binary 16 17## But if you really want to use that plugin, here's the instruction 18 19(Note `protoc` can be invoked programmatically with 20[protoc crate](https://github.com/stepancheg/rust-protobuf/tree/master/protoc/)) 21 220) Install protobuf for `protoc` binary. 23 24On OS X [Homebrew](https://github.com/Homebrew/brew) can be used: 25 26``` 27brew install protobuf 28``` 29 30On Ubuntu, `protobuf-compiler` package can be installed: 31 32``` 33apt-get install protobuf-compiler 34``` 35 36Protobuf is needed only for code generation, `rust-protobuf` runtime 37does not use `protobuf` library. 38 391) Install `protoc-gen-rust` program (which is `protoc` plugin) 40 41It can be installed either from source or with `cargo install protobuf` command. 42 432) Add `protoc-gen-rust` to $PATH 44 45If you installed it with cargo, it should be 46 47``` 48PATH="$HOME/.cargo/bin:$PATH" 49``` 50 513) Generate .rs files: 52 53``` 54protoc --rust_out . foo.proto 55``` 56 57This will generate .rs files in current directory. 58