一个项目使用RTOS和LWIP。今天我更新了IDE后,项目无法编译,出现以下错误:errno被多次声明。实际上我项目中errno只声明了一次。即使我使用CubeMX创建一个包含RTOS和LWIP的项目,也会出现同样的错误。如果我在sys_arch.c中注释掉它,错误就会消失。
c:\st\stm32cubeide_1.3.0\stm32cubeide\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.0.202111181127\tools\arm-none-eabi\bin\ld.exe: c:/st/stm32cubeide_1.3.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard\libc_nano.a(lib_a-reent.o):(.bss.errno+0x0): multiple definition of `errno'; ./Middlewares/Third_Party/LwIP/system/OS/sys_arch.o:C:/Software/Firmware/EtherNetTest/Debug/../Middlewares/Third_Party/LwIP/system/OS/sys_arch.c:45: first defined here
collect2.exe: error: ld returned 1 exit status
有没有LWIP代码的解决方法?
|
|