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.

Does static library(*.lib) built with both *.c and *.cla work properly or not?

Dear All:

I have a static library project mixed with both *.c and *.cla source files. I select CLA support in configuration when I build this static library. And the lib file builds successfully.

My question is whether the cla related function in this static library will function in my cla project as I expected or not?

Anybody has some idea or experience?

ZYB

2013.08.01

  • Yanbin Zhao92331 said:

    Dear All:

    I have a static library project mixed with both *.c and *.cla source files. I select CLA support in configuration when I build this static library. And the lib file builds successfully.

    My question is whether the cla related function in this static library will function in my cla project as I expected or not?

    Anybody has some idea or experience?

    ZYB

    2013.08.01

    Are you having trouble getting it to work?  As long as the proper sections (code) are handled in the linker command file and the CPU copies the CLA code/data needed to CLA memory it will work.  A library is just simply a precompiled set of object files that are archived together.

    Lori

  • Following up on this - we do see an issue and are working to resolve it with our compiler team.

  • Hallo, Lori:

    There will be warning information like this "Multiple markers at this line   - <a href="file:/D:/Programs/TICCS5/ccsv5/tools/compiler/dmed/HTML/17003.html">#17003-D</a> relocation from function”

    And I find that if your library contains global variables, you should be careful. Because if these global variables are defined in ".c" file, they will be put into C28x RAM and initialized so that CLA can not access them correctly, and thus cause problem.

    An example is:

    If global variable "u16_root" is defined in <Flower.c> and used in function "void flower_plant(void)" of <Flower.c>, you can not invoke function "void flower_plant(void)" in a CLA source file or use the global variable "u16_root".