It appears that the latest gRPC release (1.7.2) does not compile with OpenSSL 1.1.0g. Both packages are the latest releases as of now (Nov 15, 2017). A quick googling returned a couple github issues such as this one:
gRPC build using cmake toolchain fails at grpc_print_google_default_creds_token as follows:
Linking C executable grpc_print_google_default_creds_token
libgrpc.so: undefined reference to `sk_pop_free'
libgrpc.so: undefined reference to `EVP_DigestVerifyUpdate'
libgrpc.so: undefined reference to `CRYPTO_set_locking_callback'
libgrpc.so: undefined reference to `SSL_CTX_set_tlsext_servername_arg'
libgrpc.so: undefined reference to `sk_value'
libgrpc.so: undefined reference to `SSL_load_error_strings'
libgrpc.so: undefined reference to `EVP_MD_CTX_create'
libgrpc.so: undefined reference to `SSL_CTX_set_tlsext_servername_callback'
libgrpc.so: undefined reference to `SSL_CTX_add_extra_chain_cert'
libgrpc.so: undefined reference to `BIO_should_retry'
libgrpc.so: undefined reference to `BIO_get_mem_data'
libgrpc.so: undefined reference to `CRYPTO_num_locks'
libgrpc.so: undefined reference to `EVP_MD_CTX_destroy'
libgrpc.so: undefined reference to `sk_num'
libgrpc.so: undefined reference to `SSL_library_init'
libgrpc.so: undefined reference to `SSL_CTX_set_tmp_ecdh'
libgrpc.so: undefined reference to `CRYPTO_set_id_callback'
libgrpc.so: undefined reference to `SSL_set_tlsext_host_name'
libgrpc.so: undefined reference to `BIO_pending'
libgrpc.so: undefined reference to `sk_new_null'
libgrpc.so: undefined reference to `EVP_DigestSignUpdate'
libgrpc.so: undefined reference to `OpenSSL_add_all_algorithms'
libgrpc.so: undefined reference to `sk_push'
collect2: error: ld returned 1 exit status
CMakeFiles/grpc_print_google_default_creds_token.dir/build.make:100: recipe for target 'grpc_print_google_default_creds_token' failed
make[2]: *** [grpc_print_google_default_creds_token] Error 1
CMakeFiles/Makefile2:292: recipe for target 'CMakeFiles/grpc_print_google_default_creds_token.dir/all' failed
make[1]: *** [CMakeFiles/grpc_print_google_default_creds_token.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
I'm wondering if this is a known issue and any patch is coming along the way (no issue with BoringSSL in third_party). Any comment/information about gRPC + OpenSSL would be appreciated.