grpc/1.54.3

Google's RPC (remote procedure call) library and framework.
Recipe info
2024-01-23

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
grpc/1.54.3

Using grpc

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
grpc/1.54.3
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("grpc/1.54.3")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): gRPC
  • CMake target name(s): grpc::grpc
  • gpr => gRPC::gpr
    upb => gRPC::upb
    _grpc => gRPC::grpc
    grpc++ => gRPC::grpc++
    grpc++_alts => gRPC::grpc++_alts
    grpc_unsecure => gRPC::grpc_unsecure
    address_sorting => gRPC::address_sorting
    grpc++_unsecure => gRPC::grpc++_unsecure
    grpcpp_channelz => gRPC::grpcpp_channelz
    grpc++_reflection => gRPC::grpc++_reflection
    grpc_plugin_support => gRPC::grpc_plugin_support
    grpc++_error_details => gRPC::grpc++_error_details
    
  • pkg-config file name(s): grpc.pc
  • gpr => gpr.pc
    upb => upb.pc
    _grpc => grpc.pc
    grpc++ => grpc++.pc
    grpc++_alts => grpc++_alts.pc
    grpc_unsecure => grpc_unsecure.pc
    address_sorting => address_sorting.pc
    grpc++_unsecure => grpc++_unsecure.pc
    grpcpp_channelz => grpcpp_channelz.pc
    grpc++_reflection => grpc++_reflection.pc
    grpc_plugin_support => grpc_plugin_support.pc
    grpc++_error_details => grpc++_error_details.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(gRPC REQUIRED)
# ...
target_link_libraries(YOUR_TARGET grpc::grpc)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the grpc homepage listed above:

#include "grpc++/alarm.h"
#include "grpc++/channel.h"
#include "grpc++/client_context.h"
#include "grpc++/completion_queue.h"
#include "grpc++/create_channel.h"
#include "grpc++/create_channel_posix.h"
#include "grpc++/ext/health_check_service_server_builder_option.h"
#include "grpc++/ext/proto_server_reflection_plugin.h"
#include "grpc++/generic/async_generic_service.h"
#include "grpc++/generic/generic_stub.h"
#include "grpc++/grpc++.h"
#include "grpc++/health_check_service_interface.h"
#include "grpc++/impl/call.h"
#include "grpc++/impl/channel_argument_option.h"
#include "grpc++/impl/client_unary_call.h"
#include "grpc++/impl/codegen/async_stream.h"
#include "grpc++/impl/codegen/async_unary_call.h"
#include "grpc++/impl/codegen/byte_buffer.h"
#include "grpc++/impl/codegen/call.h"
#include "grpc++/impl/codegen/call_hook.h"
#include "grpc++/impl/codegen/channel_interface.h"
#include "grpc++/impl/codegen/client_context.h"
#include "grpc++/impl/codegen/client_unary_call.h"
#include "grpc++/impl/codegen/completion_queue.h"
#include "grpc++/impl/codegen/completion_queue_tag.h"
#include "grpc++/impl/codegen/config.h"
#include "grpc++/impl/codegen/config_protobuf.h"
#include "grpc++/impl/codegen/create_auth_context.h"
#include "grpc++/impl/codegen/metadata_map.h"
#include "grpc++/impl/codegen/method_handler_impl.h"
#include "grpc++/impl/codegen/proto_utils.h"
#include "grpc++/impl/codegen/rpc_method.h"
#include "grpc++/impl/codegen/rpc_service_method.h"
#include "grpc++/impl/codegen/security/auth_context.h"
#include "grpc++/impl/codegen/serialization_traits.h"
#include "grpc++/impl/codegen/server_context.h"
#include "grpc++/impl/codegen/server_interface.h"
#include "grpc++/impl/codegen/service_type.h"
#include "grpc++/impl/codegen/slice.h"
#include "grpc++/impl/codegen/status.h"
#include "grpc++/impl/codegen/status_code_enum.h"
#include "grpc++/impl/codegen/string_ref.h"
#include "grpc++/impl/codegen/stub_options.h"
#include "grpc++/impl/codegen/sync_stream.h"
#include "grpc++/impl/codegen/time.h"
#include "grpc++/impl/grpc_library.h"
#include "grpc++/impl/method_handler_impl.h"
#include "grpc++/impl/rpc_method.h"
#include "grpc++/impl/rpc_service_method.h"
#include "grpc++/impl/serialization_traits.h"
#include "grpc++/impl/server_builder_option.h"
#include "grpc++/impl/server_builder_plugin.h"
#include "grpc++/impl/server_initializer.h"
#include "grpc++/impl/service_type.h"
#include "grpc++/resource_quota.h"
#include "grpc++/security/auth_context.h"
#include "grpc++/security/auth_metadata_processor.h"
#include "grpc++/security/credentials.h"
#include "grpc++/security/server_credentials.h"
#include "grpc++/server.h"
#include "grpc++/server_builder.h"
#include "grpc++/server_context.h"
#include "grpc++/server_posix.h"
#include "grpc++/support/async_stream.h"
#include "grpc++/support/async_unary_call.h"
#include "grpc++/support/byte_buffer.h"
#include "grpc++/support/channel_arguments.h"
#include "grpc++/support/config.h"
#include "grpc++/support/error_details.h"
#include "grpc++/support/slice.h"
#include "grpc++/support/status.h"
#include "grpc++/support/status_code_enum.h"
#include "grpc++/support/string_ref.h"
#include "grpc++/support/stub_options.h"
#include "grpc++/support/sync_stream.h"
#include "grpc++/support/time.h"
#include "grpc/byte_buffer.h"
#include "grpc/byte_buffer_reader.h"
#include "grpc/census.h"
#include "grpc/compression.h"
#include "grpc/event_engine/endpoint_config.h"
#include "grpc/event_engine/event_engine.h"
#include "grpc/event_engine/internal/memory_allocator_impl.h"
#include "grpc/event_engine/internal/slice_cast.h"
#include "grpc/event_engine/memory_allocator.h"
#include "grpc/event_engine/memory_request.h"
#include "grpc/event_engine/port.h"
#include "grpc/event_engine/slice.h"
#include "grpc/event_engine/slice_buffer.h"
#include "grpc/fork.h"
#include "grpc/grpc.h"
#include "grpc/grpc_posix.h"
#include "grpc/grpc_security.h"
#include "grpc/grpc_security_constants.h"
#include "grpc/impl/codegen/atm.h"
#include "grpc/impl/codegen/atm_gcc_atomic.h"
#include "grpc/impl/codegen/atm_gcc_sync.h"
#include "grpc/impl/codegen/atm_windows.h"
#include "grpc/impl/codegen/byte_buffer.h"
#include "grpc/impl/codegen/byte_buffer_reader.h"
#include "grpc/impl/codegen/compression_types.h"
#include "grpc/impl/codegen/connectivity_state.h"
#include "grpc/impl/codegen/fork.h"
#include "grpc/impl/codegen/gpr_types.h"
#include "grpc/impl/codegen/grpc_types.h"
#include "grpc/impl/codegen/log.h"
#include "grpc/impl/codegen/port_platform.h"
#include "grpc/impl/codegen/propagation_bits.h"
#include "grpc/impl/codegen/slice.h"
#include "grpc/impl/codegen/status.h"
#include "grpc/impl/codegen/sync.h"
#include "grpc/impl/codegen/sync_abseil.h"
#include "grpc/impl/codegen/sync_custom.h"
#include "grpc/impl/codegen/sync_generic.h"
#include "grpc/impl/codegen/sync_posix.h"
#include "grpc/impl/codegen/sync_windows.h"
#include "grpc/impl/compression_types.h"
#include "grpc/impl/connectivity_state.h"
#include "grpc/impl/grpc_types.h"
#include "grpc/impl/propagation_bits.h"
#include "grpc/impl/slice_type.h"
#include "grpc/load_reporting.h"
#include "grpc/slice.h"
#include "grpc/slice_buffer.h"
#include "grpc/status.h"
#include "grpc/support/alloc.h"
#include "grpc/support/atm.h"
#include "grpc/support/atm_gcc_atomic.h"
#include "grpc/support/atm_gcc_sync.h"
#include "grpc/support/atm_windows.h"
#include "grpc/support/cpu.h"
#include "grpc/support/log.h"
#include "grpc/support/log_windows.h"
#include "grpc/support/port_platform.h"
#include "grpc/support/string_util.h"
#include "grpc/support/sync.h"
#include "grpc/support/sync_abseil.h"
#include "grpc/support/sync_custom.h"
#include "grpc/support/sync_generic.h"
#include "grpc/support/sync_posix.h"
#include "grpc/support/sync_windows.h"
#include "grpc/support/thd_id.h"
#include "grpc/support/time.h"
#include "grpc/support/workaround_list.h"
#include "grpcpp/alarm.h"
#include "grpcpp/channel.h"
#include "grpcpp/client_context.h"
#include "grpcpp/completion_queue.h"
#include "grpcpp/create_channel.h"
#include "grpcpp/create_channel_binder.h"
#include "grpcpp/create_channel_posix.h"
#include "grpcpp/ext/call_metric_recorder.h"
#include "grpcpp/ext/channelz_service_plugin.h"
#include "grpcpp/ext/health_check_service_server_builder_option.h"
#include "grpcpp/ext/proto_server_reflection_plugin.h"
#include "grpcpp/ext/server_metric_recorder.h"
#include "grpcpp/generic/async_generic_service.h"
#include "grpcpp/generic/generic_stub.h"
#include "grpcpp/grpcpp.h"
#include "grpcpp/health_check_service_interface.h"
#include "grpcpp/impl/call.h"
#include "grpcpp/impl/call_hook.h"
#include "grpcpp/impl/call_op_set.h"
#include "grpcpp/impl/call_op_set_interface.h"
#include "grpcpp/impl/channel_argument_option.h"
#include "grpcpp/impl/channel_interface.h"
#include "grpcpp/impl/client_unary_call.h"
#include "grpcpp/impl/codegen/async_generic_service.h"
#include "grpcpp/impl/codegen/async_stream.h"
#include "grpcpp/impl/codegen/async_unary_call.h"
#include "grpcpp/impl/codegen/byte_buffer.h"
#include "grpcpp/impl/codegen/call.h"
#include "grpcpp/impl/codegen/call_hook.h"
#include "grpcpp/impl/codegen/call_op_set.h"
#include "grpcpp/impl/codegen/call_op_set_interface.h"
#include "grpcpp/impl/codegen/callback_common.h"
#include "grpcpp/impl/codegen/channel_interface.h"
#include "grpcpp/impl/codegen/client_callback.h"
#include "grpcpp/impl/codegen/client_context.h"
#include "grpcpp/impl/codegen/client_interceptor.h"
#include "grpcpp/impl/codegen/client_unary_call.h"
#include "grpcpp/impl/codegen/completion_queue.h"
#include "grpcpp/impl/codegen/completion_queue_tag.h"
#include "grpcpp/impl/codegen/config.h"
#include "grpcpp/impl/codegen/config_protobuf.h"
#include "grpcpp/impl/codegen/create_auth_context.h"
#include "grpcpp/impl/codegen/delegating_channel.h"
#include "grpcpp/impl/codegen/intercepted_channel.h"
#include "grpcpp/impl/codegen/interceptor.h"
#include "grpcpp/impl/codegen/interceptor_common.h"
#include "grpcpp/impl/codegen/message_allocator.h"
#include "grpcpp/impl/codegen/metadata_map.h"
#include "grpcpp/impl/codegen/method_handler.h"
#include "grpcpp/impl/codegen/method_handler_impl.h"
#include "grpcpp/impl/codegen/proto_buffer_reader.h"
#include "grpcpp/impl/codegen/proto_buffer_writer.h"
#include "grpcpp/impl/codegen/proto_utils.h"
#include "grpcpp/impl/codegen/rpc_method.h"
#include "grpcpp/impl/codegen/rpc_service_method.h"
#include "grpcpp/impl/codegen/security/auth_context.h"
#include "grpcpp/impl/codegen/serialization_traits.h"
#include "grpcpp/impl/codegen/server_callback.h"
#include "grpcpp/impl/codegen/server_callback_handlers.h"
#include "grpcpp/impl/codegen/server_context.h"
#include "grpcpp/impl/codegen/server_interceptor.h"
#include "grpcpp/impl/codegen/server_interface.h"
#include "grpcpp/impl/codegen/service_type.h"
#include "grpcpp/impl/codegen/slice.h"
#include "grpcpp/impl/codegen/status.h"
#include "grpcpp/impl/codegen/status_code_enum.h"
#include "grpcpp/impl/codegen/string_ref.h"
#include "grpcpp/impl/codegen/stub_options.h"
#include "grpcpp/impl/codegen/sync.h"
#include "grpcpp/impl/codegen/sync_stream.h"
#include "grpcpp/impl/codegen/time.h"
#include "grpcpp/impl/completion_queue_tag.h"
#include "grpcpp/impl/create_auth_context.h"
#include "grpcpp/impl/delegating_channel.h"
#include "grpcpp/impl/grpc_library.h"
#include "grpcpp/impl/intercepted_channel.h"
#include "grpcpp/impl/interceptor_common.h"
#include "grpcpp/impl/metadata_map.h"
#include "grpcpp/impl/method_handler_impl.h"
#include "grpcpp/impl/proto_utils.h"
#include "grpcpp/impl/rpc_method.h"
#include "grpcpp/impl/rpc_service_method.h"
#include "grpcpp/impl/serialization_traits.h"
#include "grpcpp/impl/server_builder_option.h"
#include "grpcpp/impl/server_builder_plugin.h"
#include "grpcpp/impl/server_callback_handlers.h"
#include "grpcpp/impl/server_initializer.h"
#include "grpcpp/impl/service_type.h"
#include "grpcpp/impl/status.h"
#include "grpcpp/impl/sync.h"
#include "grpcpp/resource_quota.h"
#include "grpcpp/security/alts_context.h"
#include "grpcpp/security/alts_util.h"
#include "grpcpp/security/auth_context.h"
#include "grpcpp/security/auth_metadata_processor.h"
#include "grpcpp/security/authorization_policy_provider.h"
#include "grpcpp/security/binder_credentials.h"
#include "grpcpp/security/binder_security_policy.h"
#include "grpcpp/security/credentials.h"
#include "grpcpp/security/server_credentials.h"
#include "grpcpp/security/tls_certificate_provider.h"
#include "grpcpp/security/tls_certificate_verifier.h"
#include "grpcpp/security/tls_credentials_options.h"
#include "grpcpp/server.h"
#include "grpcpp/server_builder.h"
#include "grpcpp/server_context.h"
#include "grpcpp/server_interface.h"
#include "grpcpp/server_posix.h"
#include "grpcpp/support/async_stream.h"
#include "grpcpp/support/async_unary_call.h"
#include "grpcpp/support/byte_buffer.h"
#include "grpcpp/support/callback_common.h"
#include "grpcpp/support/channel_arguments.h"
#include "grpcpp/support/client_callback.h"
#include "grpcpp/support/client_interceptor.h"
#include "grpcpp/support/config.h"
#include "grpcpp/support/error_details.h"
#include "grpcpp/support/interceptor.h"
#include "grpcpp/support/message_allocator.h"
#include "grpcpp/support/method_handler.h"
#include "grpcpp/support/proto_buffer_reader.h"
#include "grpcpp/support/proto_buffer_writer.h"
#include "grpcpp/support/server_callback.h"
#include "grpcpp/support/server_interceptor.h"
#include "grpcpp/support/slice.h"
#include "grpcpp/support/status.h"
#include "grpcpp/support/status_code_enum.h"
#include "grpcpp/support/string_ref.h"
#include "grpcpp/support/stub_options.h"
#include "grpcpp/support/sync_stream.h"
#include "grpcpp/support/time.h"
#include "grpcpp/support/validate_service_config.h"
#include "grpcpp/version_info.h"
#include "grpcpp/xds_server_builder.h"