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.

usbstk55bsl.lib with small memory model

Hi,

I had posted few queries in the past for running speex on C55x. Now I could compile speex and run sample program for C55x on USB stick. Speex requires the memory model to be small with ptrdiff_size=16. 

As the next step, I want to sample run time and encode online. For that I am using sample program given in aic3204 directory which uses usbstk55bsl.lib.

I am getting following linking error when I merged two codes.

fatal error: file "C:/Program Files/Texas

Instruments/ccsv4/emulation/boards/usbstk5505/lib/usbstk5505bsl.lib<usbstk55

05_i2c.obj>" has a Tag_Memory_Model attribute value of "2" that is different

than one previously seen ("1"); combining incompatible files

Similar error appears for rts55x.lib.

Can anybody throw some light?

Thanks in advance.

VJ

 

  • Hi, Just to add few things, I think the usbstk5505bsl.lib is built with ptrdiff_size=16 but memory-model=large option as seen from ccv4/emulation/boards/usbstk5505/lib/release folder. I want to include it with small memory model enabled for my program.

    But when I combined speex program (which requires ptrdiff_size=16 and memory-model=small) with aic3204 program (this program helps sample and digitize the speech, it uses the usbstk5505bsl.lib which is currently compiled with memory-model=large) and tried to compile and link, the program, I guess, is throwing error of tag_memory_model being different. Thus I want usbstk5505bsl.lib with small memory model.


    I tried chaning subdir.mk in release/bsl folder with --memory-model=small but the "make" commad exited with some error.

  • Hi,

    I changed the CDTBUILD file and changed the memory model options to small. I then imported C:\Program Files\Texas Instruments\ccsv4\emulation\boards\usbstk5505\lib in CCS v4 and compiled it. I ensured that c files in C:\Program Files\Texas Instruments\ccsv4\emulation\boards\usbstk5505\lib\bsl get compiled with memory model small option. This created .obj files and .lib file.

    Now I rerun the build for my program (which has speex calls as well as usbstk5505bsl.lib calls). The build threw following error while linking

    <Linking>

    fatal error: file "C:/Program Files/Texas

    Instruments/ccsv4/emulation/boards/usbstk5505/lib/usbstk5505bsl.lib<usbstk55

    05_i2c.obj>" specifies "C55x CPU Rev 3.x", which is not compatible with

    "C55x CPU Rev 2.x" specified in a previous file or on the command line

    I would be obliged if you could provide quick help to me.

    Thanks in advance.

    Regards,

    Vijay