【问题标题】:Can't get Google Protocol Buffer to compile无法让 Google Protocol Buffer 编译
【发布时间】:2015-03-16 11:57:29
【问题描述】:

我正在关注协议缓冲区的 google python 教程,在编译器之前我已经能够成功完成所有操作。

https://developers.google.com/protocol-buffers/docs/pythontutorial

教程如下:

现在运行编译器,指定源目录(您的应用程序的源代码所在的位置——如果您不提供值,则使用当前目录)、目标目录(您希望生成的代码所在的位置) ; 通常与 $SRC_DIR 相同),以及 .proto 的路径。在这种情况下,你……:

protoc -I=$SRC_DIR --python_out=$DST_DIR $SRC_DIR/addressbook.proto

假设我的桌面上有 addressbook.proto 文件,并且桌面也是我希望生成的代码所在的位置,那么上面的终端命令应该是什么样子?

【问题讨论】:

    标签: python terminal protocol-buffers gtfs


    【解决方案1】:

    假设您在 linux 下工作,您可以像这样设置 $SRC_DIR 变量(注意我删除了 DST_DIR):

    SRC_DIR="/home/USERNAME/Desktop" protoc -I=$SRC_DIR --python_out=$SRC_DIR $SRC_DIR/addressbook.proto
    

    或者您可以将每个 $SRC_DIR 和 $DST_DIR 替换为“/home/USERNAME/Desktop”(如果您改为使用桌面的路径,这也适用于 Windows。)

    【讨论】:

      【解决方案2】:

      将来,如果您不想自己编译 Python 原型类,可以考虑使用 gtfs-realtime-bindings PyPI 包,它为 GTFS-realtime 提供了预生成的 Pythong 语言绑定。更多详情请访问:

      https://github.com/google/gtfs-realtime-bindings/tree/master/python

      (完全披露:我维护这些包)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-14
        • 2012-06-06
        • 2021-08-09
        • 2023-03-16
        • 2016-11-20
        • 1970-01-01
        • 1970-01-01
        • 2023-03-15
        相关资源
        最近更新 更多