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.

How Ti libraries are linked

This is a general question about how the libraries are linked. Here is the scenario: I generated my own library which uses TI DSPLIB of version C66x_3_1_0_0. Later, I have another project which uses my own library and TI DSPLIB of a newer version C66x3_4_0_0. The question is: Which DSPLIB does my own generated library use in the end? The old version when the library is generated or the newer version when it's linked?

Could you please also point me the right place so that I can learn more in detail about the issue?

Thanks,

Garry

  • Hi Garry,

    Please refer below wiki link to create and link your own library to the project. The referred link has MSP430 however the procedure is same for all the SoCs,

    Thank you.

  • Hi Raja,

    Thanks for answering my question. However, my question is more specific. I know how to build a library and use the library in a project. My question is: If my own library uses TI's DSPLIB of the old version, and my project uses my own library (which is compiled with old version DSPLIB) and new version DSPLIB, will there be a problem? Which DSPLIB version does the my own library use in the end?

    Thanks,

    Garry

  • Hi Garry,

    Garry says said:
    My question is: If my own library uses TI's DSPLIB of the old version, and my project uses my own library (which is compiled with old version DSPLIB) and new version DSPLIB, will there be a problem? Which DSPLIB version does the my own library use in the end?


    Actually speaking, you will get an undefined behavior.

    During linking stage, same functions will get exist in two locations and probably it will throw an linking error. If at-all it passes through the linking error, we cannot strictly say which code is linked, either the function-definition is picked from old dsplib or the new dsplib.

    Either you stick to the old version of dsplib in the app code as well OR migrate your own library with the newer version of dsplib and then link the app code with the newer dsplib.