capnp(1)

capnp1

Compiler for cap'n proto data interchange format definition files

Usage

capnp [<options>] <command> [<args>]

capnp id

capnp [{--help | --version}]

Overview

This manual page documents briefly the capnp command.

It was written for the Debian distribution because the original program does not have a manual page.

capnp is wrapper for various tools used to manipulate the Cap'n Proto data interchange format. These tools include a definition file compiler, a C++ backend, a decoder for converting Cap'n Proto messages to text and a generator for Cap'n Proto definition IDs.

Options

The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-IDIR, --import-pathDIR

Add DIR to the list of directories searched for non-relative imports (ones that start with a '/').

--no-standard-import

Do not add any default import paths; use only those specified by -I. Otherwise, typically /usr/include and /usr/local/include are added by default.

--verbose

Log informational messages to stderr; useful for debugging.

--help

Show summary of options.

--version

Show version of program.

Commands

compile

Compile Cap'n Proto schema files & generate corresponding source code in one or more languages.

OPTIONS

-I<dir>, --import-path=<dir>

Add <dir> to the list of directories searched for non-relative imports (ones that start with a '/').

--no-standard-import

Do not add any default import paths; use only those specified by -I. Otherwise, typically /usr/include and /usr/local/include are added by default.

-olang[:dir], --output=lang[:dir]

Generate source code for language <lang> in directory <dir> (default: current directory). <lang> actually specifies a plugin to use. If <lang> is a simple word, the compiler for a plugin called 'capnpc-<lang>' in $PATH. If <lang> is a file path containing slashes, it is interpreted as the exact plugin executable file name, and $PATH is not searched.

--src-prefix=<prefix>

If a file specified for compilation starts with <prefix>, remove the prefix for the purpose of deciding the names of output files. For example, the following command: capnp --src-prefix=foo/bar -oc++:corge foo/bar/baz/qux.capnp would generate the files corge/baz/qux.capnp.{h,c++}.

decode

Decodes one or more encoded Cap'n Proto messages as text. Messages are read from standard input and by default are expected to be in standard Cap'n Proto serialization format.

OPTIONS

-I<dir>, --import-path=<dir>

Add <dir> to the list of directories searched for non-relative imports (ones that start with a '/').

-f, --flat

Interpret the input as one large single-segment message rather than a stream in standard serialization format.

--no-standard-import

Do not add any default import paths; use only those specified by -I. Otherwise, typically /usr/include and /usr/local/include are added by default.

-p, --packed

Expect the input to be packed using standard Cap'n Proto packing, which deflates zero-valued bytes.

--short

Print in short (non-pretty) format. Each message will be printed on one line, without using whitespace to improve readability.

id

Generates a unique identifier for Cap'n Proto schema files.

Releases

5 releases since Debian 9 (Stretch); the text changed 4 times.

  1. 9
  2. 10
  3. 11
  4. 12
  5. 13

Author

Tom Lee <[email protected]>

Wrote this manpage for the Debian system.

From capnproto 1.1.0-2 in Debian 13 (Trixie). Parsed by carta from the page's man source.