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.

The warning of ndk example!

Other Parts Discussed in Thread: OMAP-L138

Hi everyone:

     I am using NDK 2.0 and CCS 3.3.

    However ,when I use the ndk example "helloworld"of dsk6455,whhe I build it ,the warning "warning : creating output section $build.artivutes without sections sectifications" came out.How can I resolve it and does it matter? 

  • Usually this message happens when the linker command file does not specify where to place the <my section> section. To eliminate the warning add a line to your linker command file which specifies where to place the section inside the SECTIONS command.

    If the output section was named .template, the linker command file might look like:

       .template > ISRAM
    

    Specifically, if the message refers to the section $build.attributes, the warning should really not be generated for that section. It is meaningless for that section because that section is not allocated in memory. Some versions of the linker have this bug where the warning is generated for the $build.attributes section, however it should not cause any issues and can be afely ignored.

    So you can ignore the warning or update your CGT:

    http://tiexpressdsp.com/index.php/Compiler_Installation_and_Selection

  • Mariana said:

    If the output section was named .template, the linker command file might look like:

       .template > ISRAM
    



    Mariana,
    I faced a similar problem with code for OMAP-L138 on CCS 4.2.4.
    In the linker file I wrote:

    SECTIONS
    {
    ....
       .YNsection  > external_ram    
    }

    and to avoid re-write on my data, I limited the memory range for my 'section'


    MEMORY
    {
    ...
       external_ram:    ORIGIN = 0xC5000000  LENGTH = 0x03000000
    ...
    }

    But I still receiving a warning:
    creating output section " YNsection " without a SECTIONS specification        evmomapl138_test_touch    line 0    1345670764339    8904

    It seems that this warning doesn't change anything but I wander why it happens.

  • Hi Jacob,

    Did you put "MEMORY" before or after "SECTIONS" in your linker command file?

     

  • Hi Mariana, I put it before. The complete file looks like this.
    This is a code from code examples of ZOOM kit, I'm just adding some things to it.

    MEMORY
    {
       dsp_l2_ram:      ORIGIN = 0x11800000  LENGTH = 0x00040000
       shared_ram:      ORIGIN = 0x80000000  LENGTH = 0x00020000
       external_ram:    ORIGIN = 0xC5000000  LENGTH = 0x03000000
       arm_local_ram:   ORIGIN = 0xFFFF0000  LENGTH = 0x00002000
    }

    SECTIONS
    {
       .text       > shared_ram
       .const      > shared_ram
       .bss        > shared_ram
       .far        > shared_ram
       .switch     > shared_ram
       .stack      > shared_ram
       .data       > shared_ram
       .cinit      > shared_ram
       .sysmem     > shared_ram
       .cio        > shared_ram
       .YNsection  > external_ram    
    }

  • Hi Jacob,

    I just tried the same thing you did and I did not get an error. What are you putting in the .YNsection section? Does it fitinthe size specified?

     

  • Mariana, I put this:

    #pragma DATA_SECTION ( YN , " YNsection ");
    const float YN[]={
        #include "YN.txt"
    };

  • Hi Jacob,

    You forgot the dot before YNsection. Replace:

    Jacob Gontmacher said:
    #pragma DATA_SECTION ( YN , " YNsection ");

    with

    #pragma DATA_SECTION ( YN , ".YNsection ");

     

     

  • Mariana, it helped but the warning did not go away at first. I also had to eliminate the spaces in " .YNsection " to ".YNsection" and now no warnings present.
    Thank you very much.

    Jacob.

  • Hi Jacob,

    Yes, the name of the section has to match exactly in the command file and in the source file. I am glad you got it working!