tree: f21c18f7ed1573680c88fb1ca73237c834566e0f [path history] [tgz]
  1. client/
  2. codegen/
  3. common/
  4. ext/
  5. server/
  6. thread_manager/
  7. util/
  8. README.md
src/cpp/README.md

Overview

This directory contains source code for C++ implementation of gRPC.

Pre-requisites

Linux

 $ [sudo] apt-get install build-essential autoconf libtool

Mac OSX

For a Mac system, git is not available by default. You will first need to install Xcode from the Mac AppStore and then run the following command from a terminal:

 $ [sudo] xcode-select --install

Protoc

By default gRPC uses protocol buffers, you will need the protoc compiler to generate stub server and client code.

If you compile gRPC from source, as described below, this also installs the protoc compiler.

If it hasn't been installed, you can run the following commands to install it.

$ cd grpc/third_party/protobuf
$ sudo make install   # 'make' should have been run by core grpc

Alternatively, you can download protoc binaries from the protocol buffers Github repository.

Installation

Currently to install gRPC for C++, you need to build from source as described below.

Build from Source

 $ git clone -b $(curl -L http://grpc.io/release) https://github.com/grpc/grpc
 $ cd grpc
 $ git submodule update --init
 $ make
 $ [sudo] make install

Documentation

You can find out how to build and run our simplest gRPC C++ example in our C++ quick start.

For more detailed documentation on using gRPC in C++ , see our main documentation site at grpc.io, specifically:

  • Overview: An introduction to gRPC with a simple Hello World example in all our supported languages, including C++.
  • gRPC Basics - C++: A tutorial that steps you through creating a simple gRPC C++ example application.
  • Asynchronous Basics - C++: A tutorial that shows you how to use gRPC C++'s asynchronous/non-blocking APIs.

Examples

Code examples for gRPC C++ live in this repository's examples/cpp directory.