Undefined reference to __tdata_load_start__ in crt0.s

Comments

1 comment

  • Avatar
    Jon Elliott

    The standard startup files crt0.s and thumb_crt0.s now initialise the tdata and tbss sections. It sounds like you are using an old section placement file that doesn't place these sections. To fix this you will need to modify your section placement file as follows.

    For RAM based placement files you will need to add the following to the RAM segment:

    <ProgramSection alignment="4" load="No" name=".tbss"/>
    <ProgramSection alignment="4" load="Yes" name=".tdata"/>  

    For FLASH based placement files you will need to add the following to the FLASH segment:

    <ProgramSection alignment="4" load="Yes" runin=".tdata_run" name=".tdata" />       

    and the following to the RAM segment:

    <ProgramSection alignment="4" load="No" name=".tbss"/>
    <ProgramSection alignment="4" load="No" name=".tdata_run"/>
    
    0
    Comment actions Permalink

Please sign in to leave a comment.