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.

Switching to C6000 Code Generation Tools v7.0.4

Hello,

because I need packed structs (__attribute__((packed)) ), I tried to switch to the cg tools version 7.x. Installing them from the ccs4 update function worked fine, selecting the compiler in the project properties, too. But when I try to link my code (imported spiSample to CCS4), I get this error:

'Building target: spiSample.out'
'Invoking: Linker'
"C:/Programme/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/bin/cl6x" -mv6740 -g --issue_remarks --diag_warning=225 -z -m"spiSample.map" --warn_sections -i"C:/Programme/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/lib" -i"C:/Programme/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.0.4/include" -i"" -i"C:/Programme/Texas Instruments/bios_5_41_02_14/packages/ti/rtdx/lib/c6000" -i"C:/Programme/Texas Instruments/bios_5_41_02_14/packages/ti/bios/lib" -i"H:/Projects/ccs/damian/spiSample" -i"C:/Programme/Texas Instruments/pspdrivers_01_20_00/packages/ti/pspiom/examples/evm6747/spi/edma/build" -i"C:/CCSTUD~1.3/C6000/csl/lib" -i"c:/C674x_dsp_1_00_00_11/edma3_lld_01_07_00_01/packages" -i"C:/Programme/Texas Instruments/pspdrivers_01_20_00/packages/ti/pspiom/examples/evm6747/spi/edma/../../../../../.." --reread_libs --rom_model -o "spiSample.out" -l"./spiSamplecfg.cmd"  "./spiSample_main.obj" "./spiSample_io.obj" "./spiSamplecfg_c.obj" "./spiSamplecfg.obj" -l"H:\Projects\ccs\damian\spiSample\spiSample_Debug.cmd"
<Linking>
"./spiSamplecfg.cmd", line 395: remark: object ".printf" is not allocated, but   is being placed as part of allocated object "GROUP_1"
error: cannot find file "rtdx64xplus.lib"

 undefined          first referenced                                                                          
  symbol                in file                                                                               
 ---------          ----------------                                                                          
 _HSRTDX_rec        ./spiSamplecfg.obj                                                                        
 _HSRTDX_xmt        ./spiSamplecfg.obj                                                                        
 _RTDX_Buffer_Read  C:/Programme/Texas Instruments/bios_5_41_02_14/packages/ti/bios/lib/lnkrtdx.a674<rtdx.o674>
 _RTDX_Buffer_Write C:/Programme/Texas Instruments/bios_5_41_02_14/packages/ti/bios/lib/lnkrtdx.a674<rtdx.o674>
 _RTDX_Poll         ./spiSamplecfg.obj

 

 rtdx64xplus.lib is available in C:/Programme/Texas Instruments/bios_5_41_02_14/packages/ti/rtdx/lib/c6000, so I don't understand the error... Do I need a new DSPBIOS that works with cgtools v7.x? Another way of helping me would be: Can I create a packed struct with the cgtools v6.x? Many thanks, Markus

  • Hi Markus,

    You can try explicitly adding it to your project (-l option) and see if that helps.

    Not sure why it is not finding the file however since your search path is correct. I take it that the library is referenced in your command file?

    ki

  • Hello,

     

    after a long break, I can go on here at last....

    I tried what you said but it didn't help. So I started sysinternals filemonitor and saw this:

    33    12:57:58    lnk6x.exe:1180    OPEN    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS    Options: Open  Access: 00000081   
    34    12:57:58    lnk6x.exe:1180    QUERY INFORMATION    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS    Length: 94220   
    35    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\Programme\Texas Instruments\ccsv4\tools\compiler\C6000 Code Generation Tools 7.0.4\lib\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    36    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\Programme\Texas Instruments\ccsv4\tools\compiler\C6000 Code Generation Tools 7.0.4\include\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    37    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\Programme\Texas Instruments\bios_5_41_02_14\packages\ti\bios\lib\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    38    12:57:58    lnk6x.exe:1180    DIRECTORY    H:\Projects\ccs\damian\spiSample\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    39    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\Programme\Texas Instruments\pspdrivers_01_20_00\packages\ti\pspiom\examples\evm6747\spi\edma\build\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    40    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\CCSTUD~1.3\C6000\csl\lib\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    41    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\C674x_dsp_1_00_00_11\edma3_lld_01_07_00_01\packages\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    42    12:57:58    lnk6x.exe:1180    DIRECTORY    C:\Programme\Texas Instruments\pspdrivers_01_20_00\packages\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    43    12:57:58    lnk6x.exe:1180    DIRECTORY    H:\Projects\ccs\damian\spiSample\DebugV7\    NO SUCH FILE    FileBothDirectoryInformation: rtdx64xplus.lib   
    44    12:57:58    svchost.exe:2008    QUERY INFORMATION    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS    Attributes: A   
    45    12:57:58    svchost.exe:2008    OPEN    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS    Options: Open  Access: 00020088   
    46    12:57:58    svchost.exe:2008    QUERY INFORMATION    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS    FileInternalInformation   
    47    12:57:58    svchost.exe:2008    CLOSE    C:\PROGRAMME\TEXAS INSTRUMENTS\BIOS_5_41_02_14\PACKAGES\TI\RTDX\LIB\C6000\RTDX64XPLUS.LIB    SUCCESS       

    As you see in the first line, the linker immediately finds rtdx64xplus.lib. Strange that it complains... And it keeps searching in various directories. Line 43 lead me to the idea to copy/drag the lib into my project tree - that worked! Now the program compiles.

    So this is some kind of solution - but I don't like it. I shouldn't have to copy libs to my sources. In fact, I consider it a bug - do you agree?

     

    cu

    Markus