在树莓派和Ubuntu 18.04上从源码编译运行gRPC,并测试hello-world

本文分享了如何在树莓派和Ubuntu 18.04上从源码编译gRPC,并解决了在树莓派编译时遇到的atomic库链接问题。详细步骤包括下载源码、安装依赖、在CMake中添加atomic库链接,以及使用helloworld例程测试gRPC安装是否成功。
摘要由CSDN通过智能技术生成

基本情况

起因

最近由于实验需要,要在树莓派和PC上使用RPC通信并互相调用代码,就先选定了谷歌出品的gRPC来作为初始框架。

但是在gRPC的github主页上是没有专门针对在ARM/树莓派上源码编译gRPC的步骤,今天我在做的时候也陆陆续续踩了一些坑,在这里分享给大家处理的方式。

实验环境详情

gRPC

从其官方Github repo下载的,版本为1.27.3

树莓派

树莓派我使用的是较新一款的Raspberry Pi 4B,4G内存的版本。
系统信息:

❯ lsb_release  -a
No LSB modules are available.
Distributor ID:	Raspbian
Description:	Raspbian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

CPU信息:

cat /proc/cpuinfo
processor	: 0
model name	: ARMv7 Processor rev 3 (v7l)
BogoMIPS	: 108.00
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3
... # 以下省略

Ubuntu

Ubuntu 18.06是我在虚拟机里面安装的,具体配置为2x2线程,8G内存。

编译安装步骤

基本遵循gRPC官方的编译步骤

1. 下载源码

 $ git clone -b RELEASE_TAG_HERE https://github.com/grpc/grpc # RELEASE_TAG_HERE这里我使用的是1.27.3
 $ cd grpc
 $ git submodule update --init

2. 安装依赖

$ sudo apt install build-essential autoconf libtool pkg-config

gRPC官方提供了很多种编译的方式,比如Bazel(官方推荐)、CMake、VS Studio(只支持Windows)和Ninja(Windows)。但是我毕竟还是更加熟悉CMake,最终还是采用了它。
所以下一步安装CMake。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值