Skip to content

Support Protobuf 29.0 (C++ 5.29.0) #2829

Description

@cho-m

Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)

When updating to Protobuf 29.0 in Homebrew (Homebrew/homebrew-core#199285), the build failed probably due to protocolbuffers/protobuf@49bb305.

Describe the solution you'd like (描述你期望的解决方法)

Successful build with Protobuf 29.0.

Describe alternatives you've considered (描述你想到的折衷方案)

Build/link brpc to Protobuf 25.x (C++ 4.25.x) which is the only other supported version https://protobuf.dev/support/version-support/#cpp

Additional context/screenshots (更多上下文/截图)

Error messages

In file included from /tmp/brpc-20241127-14800-on3md9/apache-brpc-1.11.0-src/src/brpc/serialized_request.h:22:
/tmp/brpc-20241127-14800-on3md9/apache-brpc-1.11.0-src/src/brpc/nonreflectable_message.h:55:11: error: unknown type name 'ClassData'; did you mean 'google::protobuf::internal::ClassData'?
   55 |     const ClassData* GetClassData() const override {
      |           ^~~~~~~~~
      |           google::protobuf::internal::ClassData
/tmp/brpc-20241127-16959-8at3et/apache-brpc-1.11.0-src/src/brpc/nonreflectable_message.h:71:58: error: only virtual member functions can be marked 'override'
   71 |     Message* New(::google::protobuf::Arena* arena) const override {
      |                                                          ^~~~~~~~

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions