python - 如何在 Windows 中为 Python 安装 `protoc` 的二进制分发版
问题描述
语境
这似乎是之前被问过几次的问题,但我找到的答案都不够清楚,而且似乎都错过了一步。我想在我的 Windows 系统中使用协议缓冲区编译器。因此,我下载了 Python 的最新版本https://github.com/protocolbuffers/protobuf/releases/tag/v3.8.0
在 zip 中,您可以找到第一个 README,内容为“ Protobuf 支持多种不同的编程语言。对于每种编程语言,您可以在相应的源目录中找到有关如何为该特定语言安装 protobuf 运行时的说明”。
所以我转到“Python”文件夹并打开第二个自述文件,内容如下:
1) 确保您拥有 Python 2.7 或更新版本。如果有疑问,请运行:
$蟒蛇-V
2) 如果您没有安装 setuptools,请注意它会在您运行setup.py
[...] 后自动下载和安装。
3) 构建 C++ 代码,或安装protoc
. 如果您安装二进制构建 C++ 代码分发版,请确保它与此包的版本相同。如果有疑问,请运行:
$ protoc --version
问题
我的问题是,我应该如何安装二进制发行版protoc
?这个二进制分布在哪里?我需要做什么来安装它?zip 文件中包含的许多其他文件夹之一中是否有相关说明?哪一个 ?我可以看到还有许多其他的 README 文件,但我担心在不确定自己在做什么的情况下随机遵循所有这些说明的想法。
到目前为止,我发现的所有答案都模糊不清或重新发送给您(例如:protoc 在哪里以及如何安装它?)
解决方案
我认为您、我以及可能许多其他人都经历过的困惑是,Protobuf Releases的每个版本的资产部分都有两种不同类型的文件
除非您想从源代码构建,否则不要获取 protobuf-python-3.9.1.zip 或类似文件。而是向下滚动以获取 protoc-3.9.1-[platform].zip。这是带有已编译二进制文件的那个
推荐阅读
- angular - Vmmem 在 1GB 内存使用时崩溃
- python - 如何删除特定列值不是日期且所有列都是字符串类型的行
- mysql - 在不区分大小写的情况下,是否有任何排序规则可以区分“е”和“ё”?
- android - 获得第一个星期天,第二个星期二这样的一天
- postgresql - 在 pgadmin 4 中搜索对象
- python - Keras CNN 自动编码器输入形状错误
- excel - 在甘特图中计算每天的小时数
- image - 在heroku release docker image中没有为进程类型web指定命令
- javascript - 使用序数后缀格式化日期
- kubernetes - 将 Grafana Helm Chart 与 Grafana App For Kubernetes 一起安装