This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

error #10099-D: program will not fit into available memory

Other Parts Discussed in Thread: MSP430G2553

hi..

      i am working on msp430g2553 i got the following error when compile the code,

#10010 errors encountered during linking; "I Remember demo.out" not built    I Remember demo             C/C++ Problem


#10099-D program will not fit into available memory.  placement with alignment fails for section ".cinit" size 0xa2 .  Available memory ranges:    lnk_msp430g2553.cmd    /I Remember demo    line 95    C/C++ Problem

here is the memory map,


MEMORY
{
    SFR                     : origin = 0x0000, length = 0x0010
    PERIPHERALS_8BIT        : origin = 0x0010, length = 0x00F0
    PERIPHERALS_16BIT       : origin = 0x0100, length = 0x0100
    RAM                     : origin = 0x0200, length = 0x0200
    INFOA                   : origin = 0x10C0, length = 0x0040
    INFOB                   : origin = 0x1080, length = 0x0040
    INFOC                   : origin = 0x1040, length = 0x0040
    INFOD                   : origin = 0x1000, length = 0x0040
    FLASH                   : origin = 0xC000, length = 0x3FE0
    INT00                   : origin = 0xFFE0, length = 0x0002
    INT01                   : origin = 0xFFE2, length = 0x0002
    INT02                   : origin = 0xFFE4, length = 0x0002
    INT03                   : origin = 0xFFE6, length = 0x0002
    INT04                   : origin = 0xFFE8, length = 0x0002
    INT05                   : origin = 0xFFEA, length = 0x0002
    INT06                   : origin = 0xFFEC, length = 0x0002
    INT07                   : origin = 0xFFEE, length = 0x0002
    INT08                   : origin = 0xFFF0, length = 0x0002
    INT09                   : origin = 0xFFF2, length = 0x0002
    INT10                   : origin = 0xFFF4, length = 0x0002
    INT11                   : origin = 0xFFF6, length = 0x0002
    INT12                   : origin = 0xFFF8, length = 0x0002
    INT13                   : origin = 0xFFFA, length = 0x0002
    INT14                   : origin = 0xFFFC, length = 0x0002
    RESET                   : origin = 0xFFFE, length = 0x0002
}

please give your thoughts.

regards

  • The .cinit section is allocated to the FLASH memory range.  This section is not very big, only 0x2a bytes.  So, it is probably not the cause of the problem.  It is merely the section the linker was attempting to allocate when FLASH ran out.

    One way to see the problem better ... Just as an experiment, increase the length of FLASH.  The resulting executable won't work, but everything will fit.  Then look at the map file.  That will show you everything going into FLASH, and give you an idea of what sections to focus on.  

    Thanks and regards,

    -George