README.md
1 GRPC implementation and test
2 ============================
3
4 NOTE: files in `src/` are shared with the GRPC project, and maintained there
5 (any changes should be submitted to GRPC instead). These files are copied
6 from GRPC, and work with both the Protobuf and FlatBuffers code generator.
7
8 `tests/` contains a GRPC specific test, you need to have built and installed
9 the GRPC libraries for this to compile. This test will build using the
10 `FLATBUFFERS_BUILD_GRPCTEST` option to the main FlatBuffers CMake project.
11
12 ## Building Flatbuffers with gRPC
13
14 ### Linux
15
16 1. Download, build and install gRPC. See [instructions](https://github.com/grpc/grpc/tree/master/src/cpp).
17 * Lets say your gRPC clone is at `/your/path/to/grpc_repo`.
18 * Install gRPC in a custom directory by running `make install prefix=/your/path/to/grpc_repo/install`.
19 2. `export GRPC_INSTALL_PATH=/your/path/to/grpc_repo/install`
20 3. `export PROTOBUF_DOWNLOAD_PATH=/your/path/to/grpc_repo/third_party/protobuf`
21 4. `mkdir build ; cd build`
22 5. `cmake -DFLATBUFFERS_BUILD_GRPCTEST=ON -DGRPC_INSTALL_PATH=${GRPC_INSTALL_PATH} -DPROTOBUF_DOWNLOAD_PATH=${PROTOBUF_DOWNLOAD_PATH} ..`
23 6. `make`
24
25 ## Running FlatBuffer gRPC tests
26
27 ### Linux
28
29 1. `ln -s ${GRPC_INSTALL_PATH}/lib/libgrpc++_unsecure.so.6 ${GRPC_INSTALL_PATH}/lib/libgrpc++_unsecure.so.1`
30 2. `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${GRPC_INSTALL_PATH}/lib`
31 3. `make test ARGS=-V`
32