grpc compile error on RHEL 7: TCP_USER_TIMEOUT
See original GitHub issueDescription of the problem / feature request:
Similar to #7890 I am having a problem building Bazel on RHEL 7.1 ppc64le. I looked at the headers on the system and TCP_USER_TIMEOUT
is not present in tcp.h
even though the glibc version is 2.17. I downloaded the sources from http://ftp.gnu.org/gnu/glibc/ and it looks like the symbol wasn’t defined until 2.18 actually.
I changed that __GLIBC_PREREQ
check to 2.18 and then Bazel builds successfully but I’m not sure if that’s the correct solution so I wanted to open this issue to see if there is some else going on and that 2.17 is actually the right value.
Bugs: what’s the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
bazel build --host_javabase=@local_jdk//:jdk --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 //src:bazel
...
ERROR: /home/geoff.mishkin/bazel/third_party/grpc/BUILD:560:1: C++ compilation of rule '//third_party/grpc:grpc_base_c' failed (Exit 1) gcc failed: error executing command /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer '-std=c++0x' -MD -MF ... (remaining 37 argument(s) skipped)
Use --sandbox_debug to see verbose messages from the sandbox
third_party/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc: In function 'grpc_error* grpc_set_socket_tcp_user_timeout(int, const grpc_channel_args*, bool)':
third_party/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc:301:42: error: 'TCP_USER_TIMEOUT' was not declared in this scope
if (0 != setsockopt(fd, IPPROTO_TCP, TCP_USER_TIMEOUT, &timeout,
^
third_party/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc:306:42: error: 'TCP_USER_TIMEOUT' was not declared in this scope
if (0 != getsockopt(fd, IPPROTO_TCP, TCP_USER_TIMEOUT, &newval, &len)) {
^
Target //src:bazel failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 2302.831s, Critical Path: 1281.57s
INFO: 1439 processes: 1 local, 1317 processwrapper-sandbox, 121 worker.
FAILED: Build did NOT complete successfully
What operating system are you running Bazel on?
RHEL 7.1 on PowerPC
What’s the output of bazel info release
?
release 0.23.2- (@non-git)
If bazel info release
returns “development version” or “(@non-git)”, tell us how you built Bazel.
Bootstrapped on the same machine.
Have you found anything relevant by searching the web?
Found #7890 found glibc sources indicating that TCP_USER_TIMEOUT
was not added til 2.18.
Issue Analytics
- State:
- Created 4 years ago
- Comments:5 (3 by maintainers)
Top Results From Across the Web
TCP and gRPC Failed Connection Timeouts (evanjones.ca)
gRPC Go: If the connection drops after sending a request, it will fail after TCP gives up retrying the request, which is about...
Read more >grpc tests compile error · Issue #10073 · FRRouting/frr - GitHub
I've tried to build the released 8.1 version in Fedora and I got the following error: /usr/bin/ld: grpc/.libs/libfrrgrpc_pb.so: undefined ...
Read more >Quick start | C++ - gRPC
This guide gets you started with gRPC in C++ with a simple working example. Contents. Build and locally install gRPC and Protocol Buffers....
Read more >C++ gRPC TCP error Protocol not available - Stack Overflow
I successfully compiled the grpc example helloworld, but when I run the following error appears(then the server starts anyway):
Read more >Deadlines, lies and videotape: The tale of a gRPC bug
In order to address this issue, the gRPC introduced the following proposal: TCP user timeout. This proposal would simply take advantage of the ......
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
This was fixed by an update to grpc. In the meantime, you can hack grpc like this prior to
bazel build
:Closed for lack of activity. Please ping the reviewers to reopen if this is still a problem.