---
title: 编译Bazel 0.26.1失败的解决办法
description: "若编译Bazel 0.26.1时提示error: ambiguating new declaration of 'long int gettid()'，详细信息如下图："
url: https://www.hikunpeng.com/document/detail/zh/SRA/ecosystemEnable/TensorFlow/kunpengtensorflow_02_0027.html
sourcePath: /source/zh/SRA/ecosystemEnable/TensorFlow/kunpengtensorflow_02_0027.html
indexId: f3e1755241d4756383385a0944d591c10c2d841af42a990f6347e8cddeeb31c172
---
# 编译Bazel 0.26.1失败的解决办法

#### 问题现象描述

若编译Bazel 0.26.1时提示error: ambiguating new declaration of 'long int gettid()'，详细信息如下图：


#### 关键过程、根本原因分析

Bazel源码定义的gettid()函数与glibc库冲突。


#### 结论、解决方案及效果

将Bazel源码中的函数名gettid改为gettid_sys，再重新编译Bazel。

调整前：


执行以下命令替换gettid：

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

调整后：
