How to update the C++ sources of gRPC:
git clone http://github.com/grpc/grpc.git
in a convenient directorygit checkout <tag>
(current is release-0_13
, commithash 78e04bbd
)mkdir -p third_party/grpc/src
cp -R <gRPC git tree>/src/{compiler,core-cpp} third_party/grpc/src
cp -R <gRPC git tree>/include third_party/grpc
How to update the Java plugin:
For any architecture other than 64-bit Linux, downloading it from Maven Central is fine. For 64-bit Linux, the plugin needs to be built statically:
git clone http://github.com/grpc/grpc-java
git checkout <tag>
(current is v0.13.2
, commithash 5933cea9
)third_party/protobuf/README.md
) and compile itexport LDFLAGS=<protobuf dir>/src/.libs
export CXXFLAGS=<protobuf dir>/src
cd compiler; ../gradlew java_pluginExecutable
In compiler/build.gradle
, this list of linker arguments:
linker.args "-Wl,-Bstatic", "-lprotoc", "-lprotobuf", "-static-libgcc", "-static-libstdc++", "-Wl,-Bdynamic", "-lpthread", "-s"
needs to be replaced with this:
linker.args "-Wl,-Bstatic", "-lprotoc", "-lprotobuf", "-static-libgcc", "-static-libstdc++", "-lpthread", "-lc", "-s", "-static"
How to update the Java code:
Simply download from Maven Central.