Closed mf301 closed 2 weeks ago
You have indicated that you are using the "IPv4 only" variant (Net4_CM3_L.lib) and may have forgotten to change the default settings in Net_Config.h. Therefore, the "IPv4/IPv6 dual stack" variant is used, which also adds the IPv6 code to the application.
Thanks for the response, I selected IPv4 only in Net_Config.h. Can you let me know the compiler settings with which Middleware version 7 was built? Especially the optimization level would be good to know.
AC6 compiler settings:
Comparing object image size of prebuilt libraries from V7 and V8 built with AC6 optimization size (-Oz) shows similar sizes.
See the following excerpt for a few Network modules:
MDK-Middleware 7.17.0: Net4_CM3_L.lib - code (ROM) in bytes net_eth.o: 2636 net_tcp.o: 6144 net_http_server.o: 7286
MDK-Middleware 8.0.0: Network - code (ROM) in bytes net_eth.o: 2670 net_tcp.o: 6436 net_http_server.o: 7356
Code size is similar (slightly different due to potentially new features or minor module reorganization).
Thanks for the information. My project is built with -Os, that explains the increase in size.
I am in the progress of transitioning a project from MDK Middleware version 7 to version 8. The previous version was provided as prebuilt library (Net4_CM3.lib and USB_CM3_L.lib). With the same compiler settings in the project, there is a significant increase in ROM consumption after switching to the source file based version 8.
Is there any guide containing the compiler settings, which were applied for the library build of Middleware version 7 (optimization, compile switches, etc.)? I checked the migration guide, but couldn't find this information.