| You get this when linking the eCos tests (or your application) and it happens because the defined memory layout for your target indicates that the program image will not fit!
This commonly happens with trying to squeeze the net stack, which is quite big, on RAM constrained targets.
Verify the memory layout to check it does fit your hardware, and generate a linker map to see where the memory is going. This can be done using the option -Wl,-Map,mapfile on the gcc link line to create a file called "mapfile" in the current directory of the build at that point. Note that if you add this to CYGBLD_GLOBAL_LDFLAGS in your ecos.ecc file, then for the eCos tests, the linker map file will be generated in the build tree subdirectory corresponding to the package.
Certainly, many configuration options can reduce the memory usage, including removing entire packages. The linker map gives a better guide as to where the memory is being used. In the case of the net stack for example, it is very wise to try to reduce the size of the buffers, i.e. the CYGPKG_NET_MEM_USAGE option.
jlarmourATredhatDOTcom |