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.

TMS320F280025: warning #10204-D: could not resolve index library "IQmath.lib" to a compatible library

Part Number: TMS320F280025
Other Parts Discussed in Thread: C2000WARE

I am struggling with fixing the issue of including IQmath.lib. Please look at the compiler, processor and linker settings that I have done in my project.

processor options

compiler settings

linker settings

I have included  the  "IQmathLib.h"  file in my project and in the header file I have selected math type as IQ_MATH.

#ifndef MATH_TYPE
#define MATH_TYPE IQ_MATH
#endif

I am using the following command file for building the project:

28002x_IQmath_lnk_CProj.cmd

  • Hi,

    Can you try changing the link order to IQMath.lib first and then libc.a second? 

    -Shantanu

  • Thank you very much for suggesting a solution. I think that IQmath.Lib is already up in the list above libc.a. Kindly explain further for my clarification. 

  • Thank you very much for suggesting a solution. I think that IQmath.Lib is already up in the list above libc.a. Kindly explain further for my clarification. 

  • I see that it is not the first entry. Can you make it the first lib? 
    By that I mean,

    IQmath.lib

    libc.a

    $(COM_TI_C200ware...)

  • I have tried by making the IQmath.lib the first item but the results remain the same. However if I replace the IQmath.lib with the IQmath_fpu32.lib, then the project compiles and links successfully. In the "IQmathLib.h" header file I have defined : define   MATH_TYPE      IQ_MATH. I have done some calculations verifications and the results are correct. Can anyone give a feedback if it is the optimized way of implementing fixed point calculations?. Is there any performance compromise if I use IQmath_fpu32 library in place of of IQmath library (I understand that IQmath_fpu32 is more suitable for controllers having fpu hardware. Correct me if I am wrong). The snapshot of the linker settings that work are shown in the below snapshot:

  • Hi,

    The IQmath.lib is an index library which automatically picks out the correct library based on the project configuration. So functionally, it is exactly the same as you directly including IQmath_fpu32.lib.

    To resolve the index library issue, can you try the included examples which use the IQMath index library and see if that works?

    -Shantanu

  • Dear Shanty I have tried and explored the example project in C2000Ware directory. The example project builds and runs without any errors/warnings. I tried replicating the example project settings into my own project but it seems that I still miss something. I think I can work with direct including IQmath_fpu32.lib as the project is compiling and linking without any errors. I have also verified results of some calculations done in Q17 format. Thank you very much for your guidance and support.