gRPC笔记2:C++创建HelloWorld项目

一、空模板创建项目

创建一个C++空项目GrpcLearn,本例中使用debug模式编译,
gRPC笔记2:C++创建HelloWorld项目_第1张图片

二、拷贝项目文件

拷贝文件到GrpcLearn项目所在目录中

  1. \grpc\examples\protoshelloworld.proto
  2. grpc\examples\cpp\helloworldgreeter_client.ccgreeter_server.cc
  3. C:\Program Files (x86)\grpc\binprotoc.exezlibd.dll
  4. grpc\build_VS2019_x32\Debuggrpc_cpp_plugin.exe
    gRPC笔记2:C++创建HelloWorld项目_第2张图片

三、生成pb文件

cmd中输入命令,生成4个pb文件

protoc.exe  --grpc_out=. --plugin=protoc-gen-grpc=grpc_cpp_plugin.exe helloworld.proto
protoc.exe --cpp_out=. helloworld.proto

gRPC笔记2:C++创建HelloWorld项目_第3张图片

四、设置项目属性

把文件关联到项目中
gRPC笔记2:C++创建HelloWorld项目_第4张图片
1. 【C/C++】-【常规】-【附加包含目录】

C:\workspaces\grpc2\grpc\third_party\protobuf\src
C:\workspaces\grpc2\grpc\include

gRPC笔记2:C++创建HelloWorld项目_第5张图片

2. 【C/C++】-【预处理器】-【预处理器定义】

添加_WIN32_WINNT=0x0A00
gRPC笔记2:C++创建HelloWorld项目_第6张图片
3. 【链接器】-【常规】-【附加库目录】

C:\workspaces\grpc2\grpc\build_VS2019\third_party\cares\cares\lib\Debug
C:\workspaces\grpc2\grpc\build_VS2019\third_party\zlib\Debug
C:\workspaces\grpc2\grpc\build_VS2019\third_party\protobuf\Debug
C:\workspaces\grpc2\grpc\build_VS2019\Debug

gRPC笔记2:C++创建HelloWorld项目_第7张图片
4. 【链接器】-【输入】-【附加依赖项】

libprotobufd.lib
grpc.lib
grpc++.lib
gpr.lib
Ws2_32.lib
zlibd.lib
cares.lib
address_sorting.lib

gRPC笔记2:C++创建HelloWorld项目_第8张图片

五、编译项目

greeter_client.cc文件中增加代码std::cin.get();,让exe窗口停下来
gRPC笔记2:C++创建HelloWorld项目_第9张图片

  1. 注释掉客户端的main函数,编译服务端,生成的exe文件改名server.exe,
  2. 注释服务端的main函数,编译客户端,生成的exe文件改名client.exe
  3. 把zlibd.dll包拷贝到exe文件所在的目录中。

六、拷贝相关依赖包,项目独立运行

拷贝相关依赖包,使得项目能独立运行:

  1. 创建文件夹depends,子文件grpcthird_party

  2. grpc\includegrpc\third_party\protobuf\src拷贝到grpc文件夹中

  3. 将下面文件夹中文件拷贝到third_party目录中:

  • grpc\build_VS2019_x32\Debug
  • grpc\build_VS2019_x32\third_party\cares\cares\lib\Debug
  • grpc\build_VS2019_x32\third_party\zlib\Debug
  • grpc\build_VS2019_x32\third_party\protobuf\Debug

代码下载地址:

https://download.csdn.net/download/danxingxian_go/12136936

七、参考资料

  1. grpc1.18.0 c++ windows visual studio 2017(vs2017)版本Helloworld示例与解析:
    https://blog.csdn.net/shan165310175/article/details/86619128
  2. Windows+VS2017使用gRPC:
    https://www.cnblogs.com/MakeView660/p/11511136.html

你可能感兴趣的:(gRPC)