Hi Support,
When I include LwIP from the STM32CubeMx, VisualGDB adds all the LwIP subdirectories to the ‘include directories’ and the makefile.
- Middlewares\Third_Party\LwIP\src\include\lwip
- Middlewares\Third_Party\LwIP\src\include\lwip\apps
- Middlewares\Third_Party\LwIP\src\include\lwip\priv
- Middlewares\Third_Party\LwIP\src\include\lwip\prot
- Middlewares\Third_Party\LwIP\src\include\netif
- Middlewares\Third_Party\LwIP\src\include\netif\ppp
- Middlewares\Third_Party\LwIP\src\include\posix
- Middlewares\Third_Party\LwIP\src\include\posix\sys
- Middlewares\Third_Party\LwIP\system\arch
That is incorrect, since only the root directories should be in the search list:
- Middlewares\Third_Party\LwIP\src\include
- Middlewares\Third_Party\LwIP\system
The problem is LwIP provide their own implementation of err.h and errno.h which are being discovered by my application and clashing with the real c/c++ err.h and errno.h. LwIP provides a macro to avoid the clashing names, but it doesn’t quite work.
I suspect you can’t do much about it, after all you are just adding the directories that STM32CubeMx puts in the project file. I will just have to remember to remove the extra directories each time I update the project from Cube. Unless you have a better or more permanent solution?
Cheers
David
-
This topic was modified 5 years ago by davidoz.