Hi all,
There is a need for compilation of structure that contains more than 7 MB of data. MDK-ARM (Professional, version 5.12.0.0) stops working after compilation, though a binary file is successfully created. As one can understand from Keil site there is a limitation: an output file nor grater than 4 megabytes can be generated. It was practically checked that in case when data did not exceed 4 megabytes, compilation finished successfully with no failure of Keil's work but adding data over 4 MB leads to failure. However, it must exist some ways to bypass this restriction. Could someone tell how to compile such huge data, please?
Thanks in advance!
If the 7MB is code then you need to accept the limitation of the tools.
If a number of MB is a "database" of const data, then you can generate that data separately and load to an absolute address and have your application access the data with a pointer or similar. There is no need to have the compilation also include font data, images etc - it would be trivial to write a PC program that compiles this resource information and produces a table with the offset of the different resources.
Did you consider to split the data into two modules?
One important question: Is there some limitation on code generation? We have a system with two 128 MByte Flash + one 64 MByte Flash. So if so we have to change the development tools very fast.
There should be no issue with that sizes. The linker of the ARMCC is in use since many many years, for example to generate the images of mobile phones. These are much bigger than what you describe.
What we would like to understand is the problem that has been described by Tetyana, but it looks like he does not reply.
Many thanks for the quick clarification.
View all questions in Keil forum