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.
After importing a project from CCS5.5 and changing the default compiler to 4.3.1, I get the following liner warning:
warning #10204-D: could not resolve index library "libmath.a" to a compatible library
LIBMATH.A is in the library search path. So what's up with warning?
From the warning, we know "libmath.a" is an index library, not a real library. The real libraries need to be present in the same directory as libmath.a; is that the case? If you are unsure about the expected names of the real libraries, execute the following command on libmath.a:
ar430 t libmath.a
[ Corrected -- Archaeologist ]
Did you mean "AR430 t libmath.a" ? Rather than "libc.a" ? This is the directory where libmath.a is located.
Yes, I meant libmath.a. Are there other libraries in the same directory as libmath.a?
Here is the directory:
Directory of C:\ti2\ccsv6\ccs_base\msp430\lib\4xx
05/05/2014 08:15 AM <DIR> .
05/05/2014 08:15 AM <DIR> ..
03/07/2014 05:20 AM 1,674 libmath.a
03/07/2014 05:20 AM 235,228 MSPMATHLIB_CCS_msp430_4xx_large_code_large_data.lib
03/07/2014 05:20 AM 235,192 MSPMATHLIB_CCS_msp430_4xx_large_code_restricted_data.lib
03/07/2014 05:20 AM 234,868 MSPMATHLIB_CCS_msp430_4xx_large_code_small_data.lib
03/07/2014 05:20 AM 234,868 MSPMATHLIB_CCS_msp430_4xx_small_code_small_data.lib
5 File(s) 941,830 bytes
2 Dir(s) 357,854,142,464 bytes free
The CPU is a MSP430F4794 by the way.
The problem is those libraries are built for MSP430X devices, not a MSP430 device like the one you are building for. I informed the MSP430 team about this issue. Since this is not related to the compiler, I will move this thread to the MSP430 forum.
Thanks and regards,
-George
What memory model(s) are you using to compile? If you are not sure, post your complete compilation options. You can find them in the build console log.
Here is the build command line:
-vmsp --abi=eabi --code_model=small --data_model=small -O0 --opt_for_speed=5 --include_path="C:/ti2/ccsv6/ccs_base/msp430/include" --include_path="C:/ti2/ccsv6/tools/compiler/msp430_4.3.1/include" --include_path="C:/Users/cbenson/Multi/Track-It 6700" --include_path="C:/Users/cbenson/Multi/Track-It 6700/inc" --include_path="C:/Users/cbenson/Multi/Track-It 6700/FatFS" -g --float_operations_allowed=none --gen_acp_xref --gcc --gen_acp_raw --define=__MSP430F4794__ --define=BOARD_REV=94 --define=MULTI --define=CCSV5 --verbose_diagnostics --diag_warning=225 --display_error_number --optimizer_interlist --remove_hooks_when_inlining --gen_opt_info=2 --printf_support=nofloat -k --c_src_interlist --asm_listing --output_all_syms --misra_advisory=suppress --misra_required=suppress
I am still waiting for an explanation from TI regarding this warning message.
Based on your commandline snapshot, you use small code and small data model. And for this combination, the library seems to be there. I expected it to be a combination like small code but large data model (which is not covered). Also, the path names and the path size seem to be okay. So I don’t know why the linker complains.
I somewhat disagree with the conclusion that it is not related to the compiler (linker) and belongs to the MSP430 forum, as it rather seems to be a problem with the mechanism of index library usage.
I had a similar problem with a project that used F5438. In the file search path in MSP430 linker, I added "${CCS_BASE_ROOT}/msp430/lib/5xx_6xx_FRxx" (since it is a 5xx device). I guess a similar fix would work (have not tried it though) for other devices where you can select the directory accordingly.
Thanks for the suggestion, but that was not my issue. The libraries in question are not for the MSP430F4794 that I am using. For some reason they are included in the project ny default. This did not cause any warnings in CCS5, however, it does in CCS6. Just to be scientific about it, I built one of the TI example projects and got the same result. Removing the libraries from the project eliminated the warnings, and made me feel much better. I hate seeing warnings that I can not explain, and dismiss as benign.
**Attention** This is a public forum