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.
Hi,
I am using Code composer Version: 4.2.4.00033 , And I am including "rtsv7R4_T_be_v3D16_eabi.lib"
After the build of the project , I am able to see memset, memcpy in the objs of the files where the memset/memcpy are not used/called at all.
This is creating problems during testing as the objs are used to test the files, It is throwing an error stating undefined symbol.
Can Anyone tel me why the memset/memcpy is getting included in my build even though I am not using these libraray files anywhere.
Thanks in Advance,
Vivek
Vivek,
Vivek Shetty said:Can Anyone tel me why the memset/memcpy is getting included in my build even though I am not using these libraray files anywhere.
If you have any console I/O function calls such as fopen(), printf(), etc.they perform dynamic memory allocation internally, therefore these functions are included.
Some details are here:http://processors.wiki.ti.com/index.php/Tips_for_using_printf
If that is your case, I am not sure if you can completely get rid of the dynamic allocation routines, but you can reduce the size of the printf complexity - check the section 4.1 in the page above. Additional tips may be available from the experts in the compiler forum (I'll move this post there).
Hope this helps,
Rafael
Vivek Shetty said:Can Anyone tel me why the memset/memcpy is getting included in my build even though I am not using these libraray files anywhere.
Mybe they are implicitly used by the C initialization to fill at zero the not initilialized variables and copy the intitialized. Also, in some compiler implementaiton memcpy can be used in structure assignment.