protoc(1) compile protocol buffer description files


protoc [--cpp_out=OUT_DIR] [--java_out=OUT_DIR] [--python_out=OUT_DIR] [-IPATH | --proto-path=PATH] PROTO_FILE
protoc {-h | --help}
protoc --version



is a compiler for protocol buffers definitions files. It can can generate C++, Java and Python source code for the classes defined in PROTO_FILE.


-IPATH, --proto_path=PATH

Specify the directory in which to search for imports. May be specified multiple times; directories will be searched in order. If not given, the current working directory is used.


Enable generation of C++ bindings and store them in OUT_DIR.


Enable generation of Java bindings and store them in OUT_DIR.


Enable generation of Python bindings and store them in OUT_DIR.

-h, --help

Show summary of options.


Show version of program.

Note that at least one of the --cpp_out, --java_out and --python_out options must be given (otherwise the program has nothing to do). It's also possible to specify more than one.


The program currently exits with code 255 for all errors, which makes it hard to differentiante from scripts the actual error.

The upstreams BTS can be found at m[blue][].


Iustin Pop <[email protected]>

Wrote this manpage for the Debian system.


Copyright © 2007 Iustin Pop

This manual page was written for the Debian system (but may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.