Protocol Buffers v22.0 introduces breaking changes in the API, as reported in the Release Announcements.
This change breaks the compilation of the package with the following (first) compilation error:
DescriptorPoolLookup.cpp:36:13: error: cannot declare variable ‘rprotobuf::DescriptorPoolLookup::source_tree’ to be of abstract type ‘rprotobuf::RSourceTree’
36 | RSourceTree DescriptorPoolLookup::source_tree;
| ^~~~~~~~~~~~~~~~~~~~
In file included from DescriptorPoolLookup.h:7,
from DescriptorPoolLookup.cpp:22:
RSourceTree.h:5:7: note: because the following virtual functions are pure within ‘rprotobuf::RSourceTree’:
5 | class RSourceTree : public GPB::compiler::SourceTree {
| ^~~~~~~~~~~
In file included from rprotobuf.h:37,
from DescriptorPoolLookup.cpp:21:
/usr/include/google/protobuf/compiler/importer.h:248:36: note: ‘virtual google::protobuf::io::ZeroCopyInputStream* google::protobuf::compiler::SourceTree::Open(absl::lts_20230125::string_view)’
248 | virtual io::ZeroCopyInputStream* Open(absl::string_view filename) = 0;
| ^~~~
make: *** [/usr/lib64/R/etc/Makeconf:200: DescriptorPoolLookup.o] Error 1
According to the error given by the compiler, it seems that const std::string&
has been replaced with absl::string_view
in the API starting from Protocol Buffers v22.0 . This is also confirmed in the Migration Guide.
Currently using Arch Linux with gcc
version 13.1.1 and protobuf
version 23.4-1.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4