⼀、ProtoBuf 在 window 下的安装
1.下载 ProtoBuf 编译器
下载地址:Releases · protocolbuffers/protobuf · GitHub


2.配置环境变量
把解压后⽂件中的bin⽬录配置到系统环境变量的Path中去.安装完毕之后这里会生成压缩包,然后我们在电脑中进行解压会出现三个文件:



点击新建路径:


然后接着点击确定就行.
3.检查是否配置成功
接下来开始验证我们是否安装成功,打开我们的cmd,进行指令验证:

这就说明在windows电脑下我们的protobuf安装成功。
这里给大家补充一个,我在添加的时候遇到的问题:

给大家推荐一个指令:
推荐:Win+X --> 终端(管理员)/Windows PowerShell(管理员),然后执行:

rundll32 sysdm.cpl,EditEnvironmentVariables


⼆、ProtoBuf 在 Linux 下的安装
1.下载 ProtoBuf
下载 ProtoBuf 前⼀定要安装依赖库:autoconf automake libtool curl make g++ unzip如未安装,安装命令如下:
Ubuntu ⽤⼾选择:
sudo apt-get install autoconf automake libtool curl make g++ unzip -y
CentOS ⽤⼾选择:
sudo yum install autoconf automake libtool curl make gcc-c++ unzip

ProtoBuf 下载地址:https://github.com/protocolbuffers/protobuf/releases
- 如果要在 C++ 下使用 ProtoBuf,可以选择 cpp.zip。
- 如果要在 JAVA 下使用 ProtoBuf,可以选择 java.zip。
- 其他语⾔选择对应的链接即可。
- 希望⽀持全部语言,选择 all.zip。
这里我希望支持全部语言,所以选择 protobuf-all-21.11.zip,直接在网上搜索这个链接地址,然后将下载链接复制出来:
https://github.com/protocolbuffers/protobuf/releases/download/v21.11/protobuf-all-21.11.zip
下载命令:wget https://github.com/protocolbuffers/protobuf/releases/download/v21.11/protobuf-all-21.11.zip

-c 是 --continue 的缩写,意思是断点续传:
- 本地已有同名文件时,wget 会先看它多大,然后用 HTTP
Range请求“从这里接着给我”,而不是从 0 字节重下;
1) 验证完整性
unzip -t protobuf-all-21.11.zip


解压完成后,会生成 protobuf-21.11 文件,进入文件:cd protobuf-21.11
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
第一步:因为在上面我们选择的是 all.zip,所以需要执行:./autogen.sh


第二步:选择统一安装(推荐):./configure --prefix=/usr/local/protobuf



再依次执行:
make // 执⾏15分钟左右
make check // 执⾏15分钟左右
sudo make install
第一步:make

第二步:make check

有的人可能会在 make check 出现错误,例如:

出现以上错误的原因是 test 的模块里面有非常多的测试用例,这些用例对服务器环境要求特别严格,需要增大下 swap 分区,具体操作可参考:
Ubuntu 18.04 swap分区扩展_ubuntu18.04 如何查看swapfile文件路径-CSDN博客
(我的建议是可以先扩大 3G,再执行 make check。如果还是报错,再扩大到 5G 重新执行 make check,如果 swap 分区为 0,就直接跳过这一步 make check)

执行 make check 后,出现以上内容就可以执行第三步:sudo make install

如果在执行 configure 时,当时选择了第一种执行方式,也就是:./configure,那么到这就可以正常使用 protobuf 了。
但如果是选择了第二种执行方式,即修改了安装目录:./configure --prefix=/usr/local/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/

最后一步,重新执行 /etc/profile 文件:
source /etc/profile
![]()
三、检查是否安装成功
输入:指令protoc --version 查看版本,有显示说明安装成功:

转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/2501_93351213/article/details/169328414




