安装过程按照这个来的:
https://grpc.io/docs/languages/cpp/quickstart/
坑1——网络问题
在执行git clone --recurse-submodules命令时,因为网络错误导致一些依赖包下载失败,这种网络问题有几种解决方法:
- 移民
- 使用gitee,但是要把所有的依赖库都移植一遍,非常麻烦
- 不断重试,直到成功
这里采用法三,怎么重试呢?
进入刚克隆的grpc文件夹,执行git submodule update --init命令就可以只重试依赖包而不是整个grpc了。
坑2——编译时内存不足
编译时gcc会报错compiler error,这是因为内存不足了,网上有人说要使用swapon命令来开启更大的交换内存空间,实测内存空间仍会不足(已经开到26g了),因为这不是根本原因,一个小小的grpc编译怎么会用这么多内存?
事实上,这是因为grpc官方安装教程中让我们使用make -j
命令的锅,不带数字的-j参数会让make不限制并发数量,导致耗尽整个系统的资源,所以我们使用make -j4
就好了。