linux避免重复编译,c++ - 在gcc linux中编译时发生的一堆错误和警告[重复] - 堆栈内存溢出...

这段代码过去几个月前都没有错误地进行编译。 我丢失了VM映像,因此使用新的GCC和库安装了新的Linux VM。 但是现在我得到了这些错误和警告。

In file included from /opt/Espressif/ESP8266_SDK/include/ets_sys.h:12:0,

from include/espmissingincludes.h:4,

from driver/i2c.c:20:

driver/i2c.c: In function 'i2c_init':

/opt/Espressif/ESP8266_SDK/include/eagle_soc.h:247:94: error: suggest parentheses around arithmetic in operand of '|' [-Werror=parentheses]

#define PIN_FUNC_SELECT(PIN_NAME, FUNC) do {WRITE_PERI_REG(PIN_NAME,READ_PERI_REG(PIN_NAME) & (~(PERIPHS_IO_MUX_FUNC<

^

/opt/Espressif/ESP8266_SDK/include/eagle_soc.h:50:87: note: in definition of macro 'WRITE_PERI_REG'

#define WRITE_PERI_REG(addr, val) (*((volatile uint32_t *)ETS_UNCACHED_ADDR(addr))) =(val)

^

driver/i2c.c:64:5: note: in expansion of macro 'PIN_FUNC_SELECT'

PIN_FUNC_SELECT(I2C_SDA_MUX, I2C_SDA_FUNC);

^

/opt/Espressif/ESP8266_SDK/include/eagle_soc.h:247:94: error: suggest parentheses around arithmetic in operand of '|' [-Werror=parentheses]

#define PIN_FUNC_SELECT(PIN_NAME, FUNC) do {WRITE_PERI_REG(PIN_NAME,READ_PERI_REG(PIN_NAME) & (~(PERIPHS_IO_MUX_FUNC<

^

/opt/Espressif/ESP8266_SDK/include/eagle_soc.h:50:87: note: in definition of macro 'WRITE_PERI_REG'

#define WRITE_PERI_REG(addr, val) (*((volatile uint32_t *)ETS_UNCACHED_ADDR(addr))) =(val)

^

driver/i2c.c:65:5: note: in expansion of macro 'PIN_FUNC_SELECT'

PIN_FUNC_SELECT(I2C_SCK_MUX, I2C_SCK_FUNC);

^

cc1: all warnings being treated as errors

make: *** [build/driver/i2c.o] Error 1

有谁知道如何解决这些问题?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值