AnsweredAssumed Answered

How to add fsdata.c file to project?

Question asked by Raymond Buck on Mar 19, 2017
Latest reply on Oct 19, 2017 by Mark Shoe

I have the STM32F407 Discovery board running with LWIP. I am able to ping the board and get replies.


I now want to get a Web Server running on the board. I used CubeMX and Enabled LWIP_HTTPD on the HTTPD configuration tab. I generated the code and imported it into System Workbench.


I created a simple web page with two html files. I then used makefsdata.exe to create the fsdata.c file and added it to the project.


When I compile the project, I get these errors:
Middlewares/Third_Party/LwIP/src/apps/httpd/fsdata.o:(.rodata+0x0): multiple definition of `file__related_html'
Middlewares/Third_Party/LwIP/src/apps/httpd/fs.o:(.rodata+0x0): first defined here
Middlewares/Third_Party/LwIP/src/apps/httpd/fsdata.o:(.rodata+0x14): multiple definition of `file__programming_html'
Middlewares/Third_Party/LwIP/src/apps/httpd/fs.o:C:\STMNew\Eth-Test\Release/../Middlewares/Third_Party/LwIP/src/apps/httpd/fs.c:85: first defined here


I looked in fs.c and do not see my two html files (related.html, programming.html) mentioned  anywhere so I don't understand why the linker thinks there are multiple definitions.


I believe the errors may be related to this code in fs.c:
#include "fsdata_custom.c"
#include "fsdata.c"


Is there a document available that has instructions on how to setup a Web Server using System Workbench? I've searched but haven't really turned up any useful information. I do find some

stuff for LWIP v1.0.1. But I assume System Workbench is using some variation of v2.x.x