使用C++在window上的编译与安装grpc

grpc在window上的编译与安装

1.Git下载源代码

源代码地址:https://github.com/grpc/grpc

先上官网学习一下怎样安装。官网:https://grpc.io/
在这里插入图片描述
选择C++的进入
在这里插入图片描述
界面上又说,教我们如何开始快速的构建一个C++语言的grpc的项目。
但都是关于Linux的怎么构建的。
我们可以查看到如何克隆源代码下来:
在这里插入图片描述
如图所示:克隆了源代码和子模块(第三方的代码)。我们可以修改一下,克隆最新的,不要指定版本的。

git clone --recurse-submodules https://github.com/grpc/grpc

复制了最新的源代码信息。克隆grpc的源代码的时候还好,能够全部克隆下来,就是有一点慢。克隆子模块的时候,经常会遇见失败的,这个时候,我们只有更新我们的子模块的就行了。

git submodule update --init

直到我们输入这一行代码直接运行结束,也就说明我们的子模块也克隆好了。
完整的源代码如图:

在这里插入图片描述
第三方中的源代码如图所示:
在这里插入图片描述
源代码准备完了。
注意:一定要保证源代码的完整,因为源代码也是挺大的,缺少东西会导致我们后面的编译生成都会出现问题。

2.CMake

安装CMake,CMake是什么就不用多说了。简单点就是可以帮助我们构建一个项目的工具,可以帮助我们把复杂的项目所需的文件关联起来,构建一个项目管理。
CMake的官网:https://cmake.org/
在这里插入图片描述
选择下载,根据自己的需要选择对应的
在这里插入图片描述
我选择的是直接解压,解压之后,如图所示:
在这里插入图片描述
进入bin目录可以看到:
在这里插入图片描述
可以把自己安装的bin目录配置到系统环境下,就可以使用命令行了。

安装完成CMake之后。使用CMake来构建这个项目

1.打开界面工具cmke-gui.exe

如图所示:
在这里插入图片描述

2.选择自己下载的源代码的文件夹

3.新建一个文件夹,又来存储生成的二进制文件

4.点击安装

在这里插入图片描述
等待生成
在这里插入图片描述
配置好这些之后就可以根据自己的需要生成对应的位数的项目文件了。

5点击生成

生成之后,就完成了。

6点击打开项目

会在vs中打开项目文件。

3.vs编译生成

现在进入了vs界面了,可以看到,我们的解决方案中加载了134个项目,然后选中ALL_BUILD来生成全部的项目,右键选择生成。
在这里插入图片描述
注意生成的时候一定要选择CMake选择的时候(x64,还是win32的)与vs中的在这里插入图片描述
要对应才可以,不然会失败。

整个生成的时间是非常久的,20分钟左右。生成成功之后。
找到INSTALL项目,右键,仅用于项目,仅生成。
在这里插入图片描述

生成以后,我可以在我们之前在CMake中设置生成目录中找到我们用于项目的文件。如果没有修改信息默认在C:\Program Files (x86)的grpc文件夹。文件如图:
在这里插入图片描述

可以进入bin目录,调用cmd,查看一下protoc信息,这个对我们的后面用到,版本信息好像很重要。
在这里插入图片描述

整个编译的过程还是比较的繁琐的,下个第三方文件就等了好久。之后有时间,在写怎么在Qt中调用grpc了。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,编译 gRPC 需要使用 C++ 和 NDK。以下是在 Android 上编译 gRPC 的步骤: 1. 下载 gRPC 的源代码,并解压缩到一个合适的目录下。 2. 下载 NDK,并解压缩到一个合适的目录下。 3. 在 gRPC 源代码目录中,创建一个名为 `CMakeLists.txt` 的文件,内容如下: ``` cmake_minimum_required(VERSION 3.10) project(grpc) set(CMAKE_CXX_STANDARD 11) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) add_library(grpc STATIC ${CMAKE_CURRENT_SOURCE_DIR}/src/cpp/client.cc ${CMAKE_CURRENT_SOURCE_DIR}/src/cpp/server.cc) target_link_libraries(grpc protobuf) ``` 4. 在 gRPC 源代码目录中,创建一个名为 `build.sh` 的脚本文件,内容如下: ``` #!/bin/bash export ANDROID_NDK=/path/to/ndk export PATH=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH mkdir -p build_android cd build_android cmake .. \ -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \ -DANDROID_ABI=arm64-v8a \ -DANDROID_PLATFORM=android-21 \ -DANDROID_STL=c++_static \ -DANDROID_CPP_FEATURES=rtti\ exceptions \ -DCMAKE_BUILD_TYPE=Release make ``` 将 `/path/to/ndk` 替换为你的 NDK 路径。 5. 运行 `build.sh` 脚本文件,等待编译完成。 6. 编译完成后,在 `build_android` 目录中会生成 `libgrpc.a` 静态库文件,你可以将它们链接到你的 Android 应用中使用。 注意:在使用 gRPC 时,你还需要在 Android 应用中使用 Protocol Buffers,因为 gRPC 使用 Protocol Buffers 进行序列化和反序列化。你可以按照前面提到的步骤,在 Android 上编译 Protocol Buffers。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值