一、CMake版本检查
grpc编译cmake要求最低版本为3.15。首先,cmake -version 查看当前cmake版本,如果低于3.15,按照以下步骤进行安装。
1.1 卸载已经安装的旧版的CMake
sudo apt-get autoremove cmake
1.2 下载最新版本CMake
CMake下载地址,CMake当前最新版本为3.25.2.因为本人系统是arm架构,所以选择 linux aarch64,请按照自己的需求选择下载。
1.3 解压
将下载后的文件拷贝到自己的虚拟机或者云服务器的任意目录。再进行解压
tar -zxf cmake-3.25.2-linux-aarch64.tar.gz
1.4 创建软链接
注: 文件路径是可以指定的, 一般选择在/opt 或 /usr 路径下, 这里选择/opt
sudo mv cmake-3.25.2-linux-aarch64 /opt/cmake-3.25.2 sudo ln -sf /opt/cmake-3.25.2/bin/* /usr/bin/
1.5 测试
使用 cmake -version 命令查看cmake是否可以正常使用。
二、gcc版本检查
gcc版本最低要求6.3
使用gcc -v 查看gcc当前版本,如果gcc/g++ 版本低于7.0,按照如下步骤进行升级安装;如果已经是高于7.0 则不需要再次安装。
2.1 安装
sudo apt-get install -y software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update sudo apt install g++-7 -y
2.2 创建软连接并检查
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 \ --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --config gcc gcc -v g++ -v
三、grpc下载
3.1 源码下载
git clone https://github.com/grpc/grpc
3.2 选择版本
这里选择v1.45.2相对较新的版本
git checkout v1.45.2
查看此时grpc目录内容的大小du -h --max-depth=1, 可以看到大概460M
3.3 下载第三方依赖库
git submodule update --init
这个过程会相对慢点,耐心等待。下载完,你会发现grpc目录内容会明显变大。
3.4 编译安装
mkdir -p build cd build cmake .. make -j2 sudo make install
四、protobuf安装
不用手动安装protobuf,不然版本可能和grcp不匹配,必须在 grpc 执行 git submodule update --init 命令之后生成的 third_party/protobuf 里面编译安装对应的 protobuf。
cd third_party/protobuf/ ./autogen.sh ./configure --prefix=/usr/local make -j2 sudo make install sudo ldconfig # 使得新安装的动态库能被加载 protoc --version ## 显示对应protobuf的版本号
参考原文链接:https://zhuanlan.zhihu.com/p/528131323