嗨,我是一名中国iOS工程师。
我正在尝试在iPhone上运行协议缓冲区,我从Google代码下载了metasyntactic project,并按照您的介绍进行操作。
但是,当我在终端中键入protoc命令时,出现错误,例如:
我的命令:> protoc --proto_path = proto / src --objc_out = proto / build proto / src / common.proto
并且错误消息是:protoc-gen-objc:找不到程序或无法执行程序
--objc_out:protoc-gen-objc:插件失败,状态码为1。
然后从谷歌代码得到一个项目,并编译一个protoc-gen-objc,我像这样运行该协议:
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的路径,对我来说,它位于/ your install path / src / compiler /中,然后调用protoc命令生成.h和.m。
如果与您的情况相同,则可以。希望对您和其他人有帮助。
关于iphone - 关于iPhone上的ProtocolBuffers,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5652348/