2013-08-03 1 views
3

кому-нибудь удалось успешно использовать 'ruby protocol buffers' gem? У меня возникли проблемы при компиляции основной прото файла:Как использовать буферы протокола ruby ​​для компиляции прото-файлов?

package Test; 

message MyMessage 
{ 
    optional string myField = 1; 
} 

, когда я называю ruby-protoc test.proto я получаю следующее сообщение об ошибке:

Person.proto:5:3: Expected "required", "optional", or "repeated". 
Person.proto:6:3: Expected "required", "optional", or "repeated". 
/var/lib/gems/1.9.1/gems/ruby-protocol-buffers-1.4.1/lib/protocol_buffers/compiler.rb:15:in `compile': 1 (ProtocolBuffers::CompileError) 
    from /var/lib/gems/1.9.1/gems/ruby-protocol-buffers-1.4.1/bin/ruby-protoc:38:in `<top (required)>' 
    from /usr/local/bin/ruby-protoc:23:in `load' 
    from /usr/local/bin/ruby-protoc:23:in `<main>' 

Большое спасибо,

Томек

+0

Вы когда-нибудь задумывались над этим? Я тоже получаю эту ошибку –

+0

Я сделал свой рубиновый модуль вручную. – Paul

ответ

0

У меня была аналогичная проблема, но в моем случае проблема заключалась в том, что я установил rubygem для protobuf, но я не установил protobuf Google, чтобы рубигем опирался. Для проверки в терминале:

$ protoc --version 

Если «protoc: команда не найдена», то решение (на OSX Использование самогон) было:

$ brew install protoc 
$ protoc --version 
libprotoc 2.6.1 

А потом компиляцией работы с помощью тестового сообщения ж/o жалобы -

$ ruby-protoc test.proto 
$ 
Смежные вопросы