当前位置: 首页 > article >正文

【protobuf】Windows与Linux下的安装详解

文章目录

  • 一、Windows下的安装
  • 二、Linux下的安装
      • 1. 下载protobuf
      • 2. 安装protobuf

在这里插入图片描述

一、Windows下的安装

​ 编译器下载地址:https://github.com/protocolbuffers/protobuf/releases
在这里插入图片描述

​ 下载之后将压缩包解压到本地目录下。解压后的文件内包含 bininclude 文件,以及一个 readme.txt

在这里插入图片描述

​ 配置环境变量:把解压后文件中的 bin 目录配置到系统环境变量的 Path 中去

在这里插入图片描述

​ 检查是否配置成功:打开 cmd,输入 protoc -- version,显示版本即为成功!

在这里插入图片描述

二、Linux下的安装

1. 下载protobuf

​ 下载 ProtoBuf 前一定要 安装依赖库autoconfautomakelibtoolcurlmakeg++unzip,如未安装,安装命令如下:

sudo apt-get install autoconf automake libtool curl make g++ unzip -y    # ubuntu命令

sudo yum install autoconf automake libtool curl make gcc-c++ unzip		# centos命令

​ 然后下载 protobuf:https://github.com/protocolbuffers/protobuf/releases,使用 wget 命令下载自己需要的版本即可:

wget https://github.com/protocolbuffers/protobuf/releases/download/v21.11/protobuf-all-21.11.zip

​ 然后解压下载的 zip 包:

unzip protobuf-all-21.11.zip

​ 接着进入解压得到的目录中:

cd protobuf-21.11

2. 安装protobuf

​ 进入解压得到的目录后,执行以下命令:

# 第一步:执行./autogen.sh	(如果下载的是某一具体语言的版本,则不需要这一步)
./autogen.sh		

# 第二步:执行configure,有两种执行⽅式,任选其⼀即可,如下:
# 	1、protobuf默认安装在 /usr/local ⽬录,lib、bin都是分散的
./configure
#	2、修改安装目录,统一安装在/usr/local/protobuf下
./configure --prefix=/usr/local/protobuf

​ 再依次执行下面命令:

make 		# 执⾏15分钟左右
make check 	 # 执⾏15分钟左右
sudo make install

​ 此时可能出现以下错误:

在这里插入图片描述

​ 出现以上错误的原因是 test 的模块里面有非常多的测试用例,这些用例对服务器环境要求特别严格,需要增大下 swap 分区,具体操作可参考:https://blog.csdn.net/AlexWang30/article/details/90341172

(建议可以先扩大 3G,再执行 make check。如果还是报错,再扩大到 5G 重新执行 make check

​ 成功执行 make check 后 ,出现以下内容就可以执行 sudo make install 了:

在这里插入图片描述

​ 到此,需要你回忆一下在执行 configure 时,如果当时选择了第一种执行方式,也就是 ./configure ,那么到这就可以正常使用 protobuf 了。如果选择了第二种执行方式,即修改了安装目录,那么还需要在 /etc/profile 中添加一些内容:

	sudo vim /etc/profile

# 添加内容如下:
#	(动态库搜索路径) 程序加载运行期间查找动态链接库时指定除了系统默认路径之外的其他路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib/
#	(静态库搜索路径) 程序编译期间查找动态链接库时指定查找共享库的路径
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/protobuf/lib/
#	执⾏程序搜索路径
export PATH=$PATH:/usr/local/protobuf/bin/
#	c程序头文件搜索路径
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/protobuf/include/
#	c++程序头文件搜索路径
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/protobuf/include/
#	pkg-config路径
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

​ 最后重新加载一下文件:

sudo source /etc/profile

​ 然后只要输入 protoc --version,有显示版本的话说明安装成功啦!
在这里插入图片描述


http://www.kler.cn/a/508543.html

相关文章:

  • 向harbor中上传镜像(向harbor上传image)
  • 微软开源GraphRAG的使用教程(最全,非常详细)
  • 前端基础笔记
  • 【机器学习实战】kaggle 欺诈检测---使用生成对抗网络(GAN)解决欺诈数据中正负样本极度不平衡问题
  • riscv架构下linux4.15实现early打印
  • Perl语言的数据库编程
  • 【论文阅读】基于空间相关性与Stacking集成学习的风电功率预测方法
  • JetPack——databing
  • Ubuntu20.04取消root账号自动登录的方法,触觉智能RK3568开发板演示
  • 基于微服务的在线校园便民服务站的设计与实现
  • 无降智o1 pro——一次特别的ChatGPT专业模式探索
  • 【C#】将信息输出到 Visual Studio 的输出窗口的几个方式
  • VSCode注释高亮(# NOTE;# TODO;# FIXME;#XXX;# HACK;# BUG)
  • 基于SpringBoot+Vue旅游管理系统的设计和实现(源码+文档+部署讲解)
  • 2025 年 Java 最新学习资料与学习路线——从零基础到高手的成长之路
  • Java 17 新特性详解与代码示例
  • 【Flink系列】1.概述
  • AWS云平台上生成式AI通过项目文档内容分析获知项目风险
  • vue集成高德地图API实现坐标拾取功能
  • 快速开发:用AI构造AI —— 打造属于个人的Copilot(M-聪明AI)
  • 为AI聊天工具添加一个知识系统 之46 蒙板程序设计(第一版):Facet六边形【意识形态:操纵】
  • 【常见BUG】Spring Boot 和 Springfox(Swagger)版本兼容问题
  • 5步打造完善的物联网IoT测试体系
  • 【机器学习实战】kaggle 欺诈检测---使用生成对抗网络(GAN)解决欺诈数据中正负样本极度不平衡问题
  • React 第二十一节 useDeferredValue 开发中用法注意事项
  • Web3 数字资产如何更有趣?解锁 Ultiland 融合 MeMe 与 RWA 的技术路径