关于iPhone上的ProtocolBuffers
嗨,我是一名中国iOS工程师。
我试图在iPhone上运行协议缓冲区,我从谷歌代码下载metasyntactic项目,并按照你的介绍。
但是当我在终端中键入protoc命令时出现错误,例如:
我的命令:> protoc --proto_path = proto / src --objc_out = proto / build proto / src / common.proto
并且错误消息是:protoc-gen-objc:程序未找到或不可执行--objc_out:protoc-gen-objc:插件失败,状态码为1。
然后从google代码中获得一个项目并编译一个protoc-gen-objc,我运行如下的protoc:protoc protoc -gen -objc -proto_path = geo3 -proto_path = src -objc_out = build / gen src / geo3.proto
最后我得到了这个错误信息:
protoc-gen-objc:文件不驻留在使用--proto_path(或-I)指定的任何路径中。 您必须指定一个包含此文件的--proto_path。 请注意,proto_path必须是.proto文件名称的确切前缀 - protoc太愚蠢了,以至于无法确定两条路径(例如绝对和相对路径)是否相等(比您想象的更难)。
所以我应该如何解决它,并获得.pb.m文件
非常感谢你。
似乎这个线程很长时间,我从这里https://github.com/booyah/protobuf-objc使用包时遇到同样的问题。
在从google安装官方protobuf软件包并准备好booyah包后,您应该手动导出protoc-gen-objc的路径,对于我来说它位于/您的安装路径/ src / compiler /中,然后调用protoc命令来生成.h和.m给你。
如果这和你的情况一样,那就行了。 希望它能帮助你和其他人。
我遇到了同样的问题。 我得到这个消息的原因是因为我正在使用C ++ protoc可执行文件。 您必须从官方谷歌网站制作原版。 转到protoc所在的objective-c端口目录并执行以下操作:
./protoc --proto_path=proto/src --objc_out=proto/build proto/src/common.proto
这将确保您在当前目录中使用objective-c protoc。
链接地址: http://www.djcxy.com/p/64783.html上一篇: About ProtocolBuffers on iPhone
下一篇: Using the same .proto file for both a C# and C++ project