-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
118 additions
and
31 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,42 +1,129 @@ | ||
# Prebuilt binaries gRPC C++ for Windows | ||
|
||
##### Current stable build of gRPC v1.47.0 and v1.46.4 | ||
##### Current stable build of gRPC v1.46.4 | ||
|
||
##### Latest release (no pre-releases) gRPC [v1.47.0](https://github.com/grpc/grpc/releases/tag/v1.47.0) | ||
##### Hotfix branch for v1.46.4 (Only requires C++11 support) gRPC [v1.46.4](https://github.com/grpc/grpc/releases/tag/v1.46.4) | ||
##### gRPC [v1.46.4](https://github.com/grpc/grpc/releases/tag/v1.46.4) | ||
|
||
> They can be downloaded separately as zip archives from the [releases](https://github.com/thommyho/gRPC_windows/releases) page | ||
> | ||
> For Information about the build information (compiler(s), sdks, etc follow Build-Info links (tracking since 1.22.0) | ||
#### Additional Visual Studio Examples | ||
##### Releases | ||
|
||
Nearly all C++ Examples from https://github.com/grpc/grpc/tree/master/examples/cpp had been ported to the same structure as mentioned in the release notes. | ||
They are maintained in this repository: https://github.com/thommyho/Cpp-gRPC-Visual-Studio-Examples - Only tested with v1.42.0 and above. | ||
| Version | Commit | Debug | Release | RelWithDebInfo | MSVC143 32Bit | MSVC143 64Bit | MSVC142 32 Bit | MSVC142 64 Bit | Example | | ||
|-------------------------------------------------------------------------|------------------------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------| | ||
| [1.46.4](https://github.com/thommyho/gRPC_windows/releases/tag/v1.46.3) | a672e22bd1e10b3ff2a91aaae5aee3a65cc95bfe | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
|
||
#### Additional Documentation | ||
Build instructions from here: <https://github.com/grpc/grpc/blob/master/BUILDING.md> | ||
|
||
→ → [Step by step installation (usage) guide](https://thommyho.github.io/Cpp-gRPC-Windows-PreBuilts) ← ← | ||
Examples included. Tested with VS2019, VS2022 Enterprise and msvc142, msvc143 (Win 10, SDK 10.0) | ||
|
||
##### Releases | ||
#### Information about Build system and Tools | ||
|
||
| Operating System | SDK Version | | ||
|------------------|-------------| | ||
| Windows 10 (x64) | 10.0 | | ||
|
||
| Build Tool | Version | | ||
|------------|-------------| | ||
| nasm | 2.15.05 | | ||
| cmake | 3.23.1 | | ||
| golang | 1.19 | | ||
| MSVC 142 | 19.29.30143 | | ||
| MSVC 143 | 19.31.31107 | | ||
|
||
#### gRPC c++ Third Party Components | ||
|
||
| Third Party Component | Version | Commit | Link | | ||
|-----------------------|------------|------------------------------------------|--------------------------------------------------------------| | ||
| abseil-cpp | 20211102.0 | 215105818dfde3174fe799600bb0f3cae233d0bf | <https://github.com/abseil/abseil-cpp> | | ||
| benchmark | | 0baacde3618ca617da95375e0af13ce1baadea47 | <https://github.com/google/benchmark> | | ||
| bloaty | | 60209eb1ccc34d5deefb002d1b7f37545204f7f2 | <https://github.com/google/bloaty> | | ||
| boringssl-with-bazel | | b9232f9e27e5668bc0414879dcdedb2a59ea75f2 | <https://github.com/google/boringssl> | | ||
| cares | | 6654436a307a5a686b008c1d4c93b0085da6e6d8 | <https://github.com/c-ares/c-ares> | | ||
| envoy-api | | 9c42588c956220b48eb3099d186487c2f04d32ec | <https://github.com/envoyproxy/data-plane-api> | | ||
| googleapis | | 2f9af297c84c55c8b871ba4495e01ade42476c92 | <https://github.com/googleapis/googleapis> | | ||
| googletest | | 0e402173c97aea7a00749e825b194bfede4f2e45 | <https://github.com/google/googletest> | | ||
| libuv | v1.37.0 | 02a9e1be252b623ee032a3137c0b0c94afbe6809 | <https://github.com/libuv/libuv> | | ||
| opencensus-proto | v0.3.0 | 4aa53e15cbf1a47bc9087e6cfdca214c1eea4e89 | <https://github.com/census-instrumentation/opencensus-proto> | | ||
| opentelemetry | | 60fa8754d890b5c55949a8c68dcfd7ab5c2395df | <https://github.com/open-telemetry/opentelemetry-proto> | | ||
| protobuf | v3.19.4 | 22d0e265de7d2b3d2e9a00d071313502e7d4cccf | <https://github.com/google/protobuf> | | ||
| protoc-gen-validate | | 9da36e59fef2267fc2b1849a05159e3ecdf24f3 | <https://github.com/envoyproxy/protoc-gen-validate> | | ||
| re2 | 2021-09-01 | 8e08f47b11b413302749c0d8b17a1c94777495d5 | <https://github.com/google/re2> | | ||
| xds | | cb28da3451f158a947dfc45090fe92b07b243bc1 | <https://github.com/cncf/xds> | | ||
| zlib | v1.2.12 | 21767c654d31d2dccdde4330529775c6c5fd5389 | <https://github.com/madler/zlib> | | ||
|
||
#### Directory Setup for using/testing the provided HelloWorld-Example(s) | ||
|
||
| Version | Build-Info | Debug | Release | RelWithDebInfo | MSVC143 32 Bit | MSVC143 64 Bit | MSVC142 32Bit | MSVC142 64Bit | MSVC141 32 Bit | MSVC141 64 Bit | MSVC140 32 Bit | MSVC140 64 Bit | Example | | ||
|--------------------------------------------------------------------------|------------------------------------------------------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------|-------------------------| | ||
| [1.46.4](https://github.com/thommyho/gRPC_windows/releases/tag/v1.46.4) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.46.4) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | | | :ballot_box_with_check: | | ||
| [1.47.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.47.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.47.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | | | :ballot_box_with_check: | | ||
| [1.46.3](https://github.com/thommyho/gRPC_windows/releases/tag/v1.46.3) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.46.3) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | | | :ballot_box_with_check: | | ||
| [1.46.1](https://github.com/thommyho/gRPC_windows/releases/tag/v1.46.1) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.46.1) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | | | :ballot_box_with_check: | | ||
| [1.45.2](https://github.com/thommyho/gRPC_windows/releases/tag/v1.45.2) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.45.2) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | | | :ballot_box_with_check: | | ||
| [1.45.1](https://github.com/thommyho/gRPC_windows/releases/tag/v1.45.1) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.45.1) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.45.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.45.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.45.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.44.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.44.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.44.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.43.2](https://github.com/thommyho/gRPC_windows/releases/tag/v1.43.2) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.43.2) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.43.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.43.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.43.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.42.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.42.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.42.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.41.1](https://github.com/thommyho/gRPC_windows/releases/tag/v1.41.1) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.41.1) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.41.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.41.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.41.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.40.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.40.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.40.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.39.1](https://github.com/thommyho/gRPC_windows/releases/tag/v1.39.1) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.39.1) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.22.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.22.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.22.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.21.4](https://github.com/thommyho/gRPC_windows/releases/tag/v1.21.4) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.21.4) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
| [1.20.0](https://github.com/thommyho/gRPC_windows/releases/tag/v1.20.0) | [link](https://github.com/thommyho/gRPC_windows_prebuilt/tree/v1.20.0) | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | :ballot_box_with_check: | | ||
```console | ||
. | ||
+-- vs2022 | ||
| +-- 0_HelperScripts | ||
| +-- 1_HelloWorld_Client | ||
| +-- 1_HelloWorld_Server | ||
| +-- 2_HelloWorld_Client_Callback | ||
| +-- 2_HelloWorld_Server_Callback | ||
| +-- 3_HelloWorld_Client_Async_1 | ||
| +-- 3_HelloWorld_Client_Async_2 | ||
| +-- 3_HelloWorld_Server_Async | ||
| +-- 4_HelloWorld_Client_Compression | ||
| +-- 4_HelloWorld_Server_Compression | ||
| +-- 5_HelloWorld_Client_Load_Balancing | ||
| +-- 5_HelloWorld_Server_Load_Balancing | ||
| +-- 6_HelloWorld_Client_Meta | ||
| +-- 6_HelloWorld_Server_Meta | ||
| +-- 7_KeyValueStore_Client | ||
| +-- 7_KeyValueStore_Server | ||
| +-- 8_Route_Guide_Client | ||
| +-- 8_Route_Guide_Server | ||
| +-- 9_Route_Guide_Client_Callback | ||
| +-- 9_Route_Guide_Server_Callback | ||
| +-- protos | ||
| +-- res | ||
| +-- Examples_vs2022.sln | ||
+-- vs2019 | ||
| +-- 0_HelperScripts | ||
| +-- 1_HelloWorld_Client | ||
| +-- 1_HelloWorld_Server | ||
| +-- 2_HelloWorld_Client_Callback | ||
| +-- 2_HelloWorld_Server_Callback | ||
| +-- 3_HelloWorld_Client_Async_1 | ||
| +-- 3_HelloWorld_Client_Async_2 | ||
| +-- 3_HelloWorld_Server_Async | ||
| +-- 4_HelloWorld_Client_Compression | ||
| +-- 4_HelloWorld_Server_Compression | ||
| +-- 5_HelloWorld_Client_Load_Balancing | ||
| +-- 5_HelloWorld_Server_Load_Balancing | ||
| +-- 6_HelloWorld_Client_Meta | ||
| +-- 6_HelloWorld_Server_Meta | ||
| +-- 7_KeyValueStore_Client | ||
| +-- 7_KeyValueStore_Server | ||
| +-- 8_Route_Guide_Client | ||
| +-- 8_Route_Guide_Server | ||
| +-- 9_Route_Guide_Client_Callback | ||
| +-- 9_Route_Guide_Server_Callback | ||
| +-- protos | ||
| +-- res | ||
| -> + Legacy Examples 2015 and 2017 | ||
# Extract the prebuilt bins and libs like this for your disired toolchain e.g.: | ||
+-- MSVC143_64 | ||
| +-- Debug | ||
| +-- bin | ||
| +-- cmake | ||
| +-- include | ||
| +-- lib | ||
| +-- share | ||
| +-- Release | ||
| +-- bin | ||
| +-- cmake | ||
| +-- include | ||
| +-- lib | ||
| +-- share | ||
| +-- RelWithDebInfo | ||
| +-- bin | ||
| +-- cmake | ||
| +-- include | ||
| +-- lib | ||
| +-- share | ||
+-- MSVC143_32 ... | ||
+-- MSVC142_64 ... | ||
+-- MSVC142_32 ... | ||
``` |