On Thu, Aug 14, 2025 at 07:40:17PM -0700, Renato Aguiar wrote:
> When trying to use gRPC library with C++, I got the following link error:
> 
> ld: error: undefined reference: 
> grpc_core::MakeDirectoryReader(std::__1::basic_string_view<char, 
> std::__1::char_traits<char>>)
> >>> referenced by /usr/local/lib/libgrpc.so.3.0 (disallowed by 
> >>> --no-allow-shlib-undefined)
> 
> Here is a patch adding that missing symbol to the gRPC library:

At least libgrpc will need a minor library bump for this.

> 
> --- net/grpc/Makefile
> +++ net/grpc/Makefile
> @@ -5,6 +5,7 @@ COMMENT =     HTTP/2-based RPC framework
>  
>  V =          1.74.1
>  DISTNAME =   grpc-${V}
> +REVISION =   0
>  
>  DIST_TUPLE +=        github grpc grpc v${V} .
>  
> --- /dev/null
> +++ net/grpc/patches/patch-src_core_util_posix_directory_reader_cc
> @@ -0,0 +1,12 @@
> +Index: src/core/util/posix/directory_reader.cc
> +--- src/core/util/posix/directory_reader.cc.orig
> ++++ src/core/util/posix/directory_reader.cc
> +@@ -25,7 +25,7 @@
> + #include "absl/strings/string_view.h"
> + 
> + #if defined(GPR_LINUX) || defined(GPR_ANDROID) || defined(GPR_FREEBSD) || \
> +-    defined(GPR_APPLE) || defined(GPR_NETBSD)
> ++    defined(GPR_APPLE) || defined(GPR_NETBSD) || defined(GPR_OPENBSD)
> + 
> + #include <dirent.h>
> + 
> 

Reply via email to