我要评分
获取效率
正确性
完整性
易理解

Failed to Compile Bazel 0.26.1

Symptom

When compiling Bazel 0.26.1, an error is reported stating "error: ambiguating new declaration of 'long int gettid()'":

Key Process and Cause Analysis

The gettid() function defined in the Bazel source code conflicts with the glibc library.

Conclusion and Solution

Change the function name gettid in the Bazel source code to gettid_sys, and then recompile Bazel.

Before:

Replace gettid.

1
grep -rl 'gettid' third_party/grpc/src/ | xargs sed -i 's/\bgettid/gettid_sys/g'

After: