---
title: Clang宏问题
description: "程序代码逻辑使用了__GNUC__的宏作为判断依据，但是GCC与Clang中定义的宏内容不一致，可以使用如下命令确认Clang中宏定义的值。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevps/compilation/ug-bisheng/kunpengbisheng_06_0050.html
sourcePath: /source/zh/kunpengdevps/compilation/ug-bisheng/kunpengbisheng_06_0050.html
indexId: 455a295157b7ebd45425c61d689d2d7403560d2666575efdd195a0dab073a86e74
---
# Clang宏问题

#### 问题介绍

程序代码逻辑使用了__GNUC__的宏作为判断依据，但是GCC与Clang中定义的宏内容不一致，可以使用如下命令确认Clang中宏定义的值。

```
clang -x c /dev/null -dM -E >clang.log;cat clang.log|grep '__GNUC__'
```


#### 解决方案

若宏内容不一致导致报错，可以在编译选项加入`-D__GNUC__=x`进行适配修改。
