修改protoc生成文件的后缀
cd protobuf-3.5.1
然后vi src/google/protobuf/compiler/cpp/cpp_generator.cc
找到CppGenerator::Generate
函数。
将.pb.cc
改为.pb.cpp
,总共有3处修改。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
@@ -164,20 +164,20 @@ bool CppGenerator::Generate(const FileDescriptor* file, { // This is the global .cc file, containing enum/services/tables/reflection google::protobuf::scoped_ptr<io::ZeroCopyOutputStream> output( - generator_context->Open(basename + ".pb.cc")); + generator_context->Open(basename + ".pb.cpp")); io::Printer printer(output.get(), '$'); file_generator.GenerateGlobalSource(&printer); } for (int i = 0; i < file_generator.NumMessages(); i++) { // TODO(gerbens) Agree on naming scheme. google::protobuf::scoped_ptr<io::ZeroCopyOutputStream> output( - generator_context->Open(basename + "." + SimpleItoa(i) + ".cc")); + generator_context->Open(basename + "." + SimpleItoa(i) + ".cpp")); io::Printer printer(output.get(), '$'); file_generator.GenerateSourceForMessage(i, &printer); } } else { google::protobuf::scoped_ptr<io::ZeroCopyOutputStream> output( - generator_context->Open(basename + ".pb.cc")); + generator_context->Open(basename + ".pb.cpp")); io::Printer printer(output.get(), '$'); file_generator.GenerateSource(&printer); }
|
安装protoc编译器
过程就不说了,直接查看安装包的src/README.md
即可。