#Overview This directory contains source code for C++ implementation of gRPC. #Status Beta #Pre-requisites ##Linux ```sh $ [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: ```sh $ [sudo] xcode-select --install ``` ##Protoc By default gRPC uses [protocol buffers](https://github.com/google/protobuf), 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. ```sh $ 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](https://github.com/google/protobuf/releases). #Installation Currently to install gRPC for C++, you need to build from source as described below. #Build from Source ```sh $ 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](../../examples/cpp). For more detailed documentation on using gRPC in C++ , see our main documentation site at [grpc.io](http://grpc.io), specifically: * [Overview](http://www.grpc.io/docs/): An introduction to gRPC with a simple Hello World example in all our supported languages, including C++. * [gRPC Basics - C++](http://www.grpc.io/docs/tutorials/basic/c.html): A tutorial that steps you through creating a simple gRPC C++ example application. * [Asynchronous Basics - C++](http://www.grpc.io/docs/tutorials/async/helloasync-cpp.html): 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](../../examples/cpp) directory.