前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【protobuf】Windows与Linux下的安装详解

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

作者头像
利刃大大
发布2025-05-22 13:33:22
发布2025-05-22 13:33:22
71600
代码可运行
举报
文章被收录于专栏:csdn文章搬运csdn文章搬运
运行总次数:0
代码可运行

一、Windows下的安装

​ 编译器下载地址:https://github.com/protocolbuffers/protobuf/releases

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

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

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

二、Linux下的安装

1. 下载protobuf

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

代码语言:javascript
代码运行次数:0
运行
复制
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 命令下载自己需要的版本即可:

代码语言:javascript
代码运行次数:0
运行
复制
wget https://github.com/protocolbuffers/protobuf/releases/download/v21.11/protobuf-all-21.11.zip

​ 然后解压下载的 zip 包:

代码语言:javascript
代码运行次数:0
运行
复制
unzip protobuf-all-21.11.zip

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

代码语言:javascript
代码运行次数:0
运行
复制
cd protobuf-21.11
2. 安装protobuf

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

代码语言:javascript
代码运行次数:0
运行
复制
# 第一步:执行./autogen.sh	(如果下载的是某一具体语言的版本,则不需要这一步)
./autogen.sh		

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

​ 再依次执行下面命令:

代码语言:javascript
代码运行次数:0
运行
复制
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 中添加一些内容:

代码语言:javascript
代码运行次数:0
运行
复制
	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/

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

代码语言:javascript
代码运行次数:0
运行
复制
sudo source /etc/profile

​ 然后只要输入 protoc --version,有显示版本的话说明安装成功啦!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Windows下的安装
  • 二、Linux下的安装
    • 1. 下载protobuf
    • 2. 安装protobuf
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档