Я делаю проект для школы, и мы должны установить gRPC
и protocol buffer
зависимости для c ++. Я следовал инструкциям по сборке здесь https://github.com/grpc/grpc/blob/master/BUILDING.md Я строю на Ubuntu 19, и когда я запускаю make
из корня grpc/
, я получаю следующую ошибку.
src/cpp/common/channel_filter.cc: In member function ‘grpc_linked_mdelem* grpc::MetadataBatch::AddMetadata(const string&, const string&)’:
src/cpp/common/channel_filter.cc:33:48: error: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘grpc_linked_mdelem’ {aka ‘struct grpc_linked_mdelem’}; use assignment or value-initialization instead [-Werror=class-memaccess]
memset(storage, 0, sizeof(grpc_linked_mdelem));
^
In file included from ./src/core/lib/transport/transport.h:34,
from ./src/core/lib/channel/channel_stack.h:48,
from src/cpp/common/channel_filter.cc:21:
./src/core/lib/transport/metadata_batch.h:33:16: note: ‘grpc_linked_mdelem’ {aka ‘struct grpc_linked_mdelem’} declared here
typedef struct grpc_linked_mdelem {
^~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make: *** [Makefile:2926: /home/n0auth/Project3/grpc/objs/opt/src/cpp/common/channel_filter.o] Error 1
Моя protoc
версия
libprotoc 3.0.0
Моя gcc
версия
gcc (Ubuntu 8.3.0-6ubuntu1) 8.3.0