我正在尝试用C++生成Google助手库。
我使用protoc编译器编译了embedded_assistant.proto文件,并获得了库的embedded_assistant.grpc.pb.h和embedded_assistant.grpc.pb.cc文件。
我创建了一个客户端文件ea_main.cc,并在其中包含了这些文件。
当我尝试使用g++编译器编译ea_main.cc时,我收到了这个错误。
car@ubuntu:~/grpc/examples/cpp/embedded_assistant$ g++ -I./ ea_main.cc -o OUT_CPP_TEST -std=c++11
In file included from embedded_assistant.grpc.pb.h:22:0,
from ea_main.cc:9:
embedded_assistant.pb.h:33:39: fatal error: google/api/annotations.pb.h: No such file or directory
compilation terminated.
在embedded_assistant.proto文件中,还包含另一个proto文件。
import "google/api/annotations.proto";
import "google/rpc/status.proto";
似乎protoc没有对这些.proto文件进行编译或生成头文件。当查看google/api/时,它们并不存在。
因此,g++编译器会因为缺少annotations.pb.h文件而出错。
为什么protoc没有编译包含在embedded_assistant.proto中的proto文件呢?我该如何获取这些文件?这是有问题的吗?