---
title: 执行atc转换或模型训练时，报错：fatal error: 'cstdint' file not found-昇腾社区
description: 在Ubuntu 22.04上执行atc转换命令或者在CentOS 7.6上进行模型训练时，报错：fatal error: 'cstdint' file not found。
keywords: 'cstdint' file not found
url: https://www.hiascend.com/document/caselibrary/detail/canncase_0020
section: (其他)
---

# 执行atc转换或模型训练时，报错：fatal error: 'cstdint' file not found-昇腾社区

URL: https://www.hiascend.com/document/caselibrary/detail/canncase_0020
描述: 在Ubuntu 22.04上执行atc转换命令或者在CentOS 7.6上进行模型训练时，报错：fatal error: 'cstdint' file not found。
关键词: 'cstdint' file not found

昇腾文档 [了解详情](https://www.hiascend.com/document)

故障案例 [了解详情](https://www.hiascend.com/document/caselibrary)

执行atc转换或模型训练时，报错：fatal error: 'cstdint' file not found

执行atc转换或模型训练时，报错：fatal error: 'cstdint' file not found

2025/06/03

897

5.0

问题信息

| 问题来源 | 产品大类 | 产品子类 | 关键字 |
| --- | --- | --- | ---|
| 官方 | 模型训练 | CANN | 'cstdint' file not found |

#### 问题现象描述

在Ubuntu 22.04上执行atc转换命令或者在CentOS 7.6上进行模型训练时，报错：fatal error: 'cstdint' file not found。

图1报错截图

#### 原因分析

可能原因一：

Ubuntu 22.04环境上安装了gcc的多个版本，CCEC时，会寻找默认安装路径下高版本的gcc和包含gcc的其他工具（如devtoolset-9-gcc），但gcc高版本安装时缺失了文件，导致找不到cstdint头文件。

示例定位思路如下：

1. 执行命令查看环境上gcc情况。

```
cd /usr/lib/gcc/aarch64-linux-gnu
ll
```

查询结果如下图所示，存在gcc11和gcc12两个安装目录。
2. 执行命令查询环境上的gcc版本。

```
dpkg -l | grep gcc
```

查询结果如下所示，存在gcc 11和gcc 12两个版本。

或者通过运行一个简单的c程序，使用CCEC编译，执行如下示例命令查看使用的gcc版本：

```
ccec -o test ./test.cc -v
```

查询结果如下所示，当前使用的是gcc 12版本。
3. 检查各版本下是否包含头文件，发现仅gcc 11版本下存在头文件，路径如下所示。

```
/usr/include/c++/11/cstdint
```

可能原因二：

CentOS 7.6系统的默认gcc版本为4.8.5，即使用户已安装了更高版本的gcc 7.3.0，但CCEC编译时找到了默认安装gcc 4.8.5的cstdint头文件，导致出现兼容性问题。

#### 解决措施

- 定位为原因一时，执行如下命令，卸载环境上的gcc 12，使用已安装的gcc 11进行编译。

```
apt remove gcc-12 libgcc-12-dev
```
- 定位为原因二时，执行模型训练前，需配置如下环境变量（aarch64和x86_64配置相同），编译时使用符合版本要求的gcc 7.3.0头文件，都配置如下环境变量，以下配置以安装路径“/usr/local/Ascend/”、gcc 7.3.0版本为例，请根据软件包实际安装路径和gcc版本进行修改。

```
export C_INCLUDE_PATH=/usr/local/Ascend/ascend-toolkit/latest/toolkit/toolchain/hcc/aarch64-target-linux-gnu/include/c++/7.3.0/:/usr/local/Ascend/ascend-toolkit/latest/toolkit/toolchain/hcc/aarch64-target-linux-gnu/include/c++/7.3.0/aarch64-target-linux-gnu/
export CPLUS_INCLUDE_PATH=/usr/local/Ascend/ascend-toolkit/latest/toolkit/toolchain/hcc/aarch64-target-linux-gnu/include/c++/7.3.0/:/usr/local/Ascend/ascend-toolkit/latest/toolkit/toolchain/hcc/aarch64-target-linux-gnu/include/c++/7.3.0/aarch64-target-linux-gnu/
```

本页内容

- 问题信息
- 问题现象描述
- 原因分析
- 解决措施
