У меня есть два файла .proto, в которых есть два пакета, которые имеют взаимную зависимость.
a.proto
syntax = "proto3";
import "b.proto";
package a;
message cert {
string filename = 1;
uint32 length = 2;
}
enum state {
UP = 1;
DOWN = 2;
}
message events {
repeated b.event curevent = 1;
uint32 val = 2;
}
b.proto
syntax = "proto3";
import "a.proto";
package b;
message event {
a.cert certificate = 1;
a.state curstate = 2;
}
Когда я пытаюсь сгенерировать файлы cpp, возникает следующая ошибка
# protoc -I. --cpp_out=. b.proto
b.proto: File recursively imports itself: b.proto -> a.proto -> b.proto
Как этого можно достичь?
Примечание: используется версия протокола libprotoc 3.3.0
.