protobuf protoc создает неправильный путь зависимости заголовка - PullRequest
0 голосов
/ 07 ноября 2019

Я использую protobuf 3.10 с учетом структуры папок, подобной этой:

ProtocTest
-- Messages
---- Common
------ CommonFields.proto
---- Incoming
------ Incoming.proto
---- protoc.exe

CommonFields.proto

syntax = "proto3";
package proto.common;

enum Color
{
    None=0;
    Blue=1;
    Red=2;
    Green=3;
}

Incoming.proto

syntax = "proto3";
package proto.incoming;

import "Common/CommonFields.proto";

message IncomingColor
{
    int32 id = 1;
    proto.common.Color color = 2;
}

Когдая запускаю protoc.exe из папки «Сообщения» с помощью этой команды:

../protoc.exe --cpp_out="..\Compiled" Incoming\*.proto

Полученный скомпилированный класс отображается в правильном месте в папке Incoming \ Compiled, но заголовок класса .cc включает в себя следующее:

#include "Incoming/Incoming.pb.h"

Поскольку .cc и заголовок находятся в одном каталоге, очевидно, что код не может найти заголовок. Я не знаю, как настроить параметры выполнения, чтобы этого не произошло. Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...