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.

Compiler/TMS320C6670: How to build C6000 RTS library without optimization

Part Number: TMS320C6670
Other Parts Discussed in Thread: TI-CGT

Tool/software: TI C/C++ Compiler

Hello,

How do I build the C6000 RTS library (e.g. rts6600_elf.lib) without optimization?

For verification of our tool I need the library without SPLOOPs, and with varying optimization options (-O0 to -O3).

What's the fastest way to do this?

  • Use the mklib utility.  It is located in the \lib directory of your compiler installation.  To get you started, I wrote this Windows batch file.  You need to tweak it to your specific installation.

    @echo off
    rem -----------------------------------------------------------------------
    rem Run this batch file in the directory where the new RTS library is to
    rem be written
    rem -----------------------------------------------------------------------
    
    rem -----------------------------------------------------------------------
    rem Do not remember the environment variables set in this file
    rem -----------------------------------------------------------------------
    setlocal
    
    rem -----------------------------------------------------------------------
    rem Set to location of the compiler installation
    rem -----------------------------------------------------------------------
    set cgtroot=C:\ti\ccsv8\tools\compiler\ti-cgt-c6000_8.2.3
    
    rem -----------------------------------------------------------------------
    rem Set to desired optimization level.  Affects build options and the
    rem name of the library built.
    rem -----------------------------------------------------------------------
    set olev=0
    
    rem -----------------------------------------------------------------------
    rem No need to modify
    rem -----------------------------------------------------------------------
    set lib=%cgtroot%\lib
    
    rem -----------------------------------------------------------------------
    rem Invoke mklib
    rem -----------------------------------------------------------------------
    @echo on
    %lib%\mklib --pattern=rts6600_elf.lib --extra_options="--opt_level=%olev% --disable_software_pipeline" --index=%lib%\libc.a --install_to=. --name=rts6600_elf_opt%olev%.lib

    Thanks and regards,

    -George

  • Hello,

    After additionally setting the PATH variable to utils/bin and utils/cygwin

    set PATH=C:\Users\user\ccsv8\utils\bin;C:\Users\user\ccsv8\utils\cygwin

    I get the following error:

    C:\Users\user\ccsv8\tools\compiler\ti-cgt-c6000_8.2.4\lib\mklib --pattern=rts6600_elf.lib --extra_options="--opt_level=0 --disable_software_pipeline" --index=C:\Users\user\ccsv8\tools\compiler\ti-cgt-c6000_8.2.4\lib\libc.a --install_to=. --name=rts6600_elf_opt0.lib
    cl6x catrig.c -O3 --diag_warning=225 --quiet --opt_level=0 --disable_software_pipeline -mo --mem_model:data=far --no_visible_enums --abi=eabi -mv6600 -c --ti_lib --keep_unneeded_types=false --vectypes --c99 -Ic:/users/ccsv8/tools/compiler/ti-cgt~1.4/lib/src -fr c:/users/user/appdata/local/temp/tif1f7~1/obj -fs c:/users/user/appdata/local/temp/tif1f7~1/obj -ft c:/users/user/appdata/local/temp/tif1f7~1/obj -ppa -ppd --pp_directory=c:/users/user/appdata/local/temp/tif1f7~1/obj
    process_begin: CreateProcess(NULL, cl6x catrig.c -O3 --diag_warning=225 --quiet --opt_level=0 --disable_software_pipeline -mo --mem_model:data=far --no_visible_enums --abi=eabi -mv6600 -c --ti_lib --keep_unneeded_types=false --vectypes --c99 -Ic:/users/ccsv8/tools/compiler/ti-cgt~1.4/lib/src -fr c:/users/user/appdata/local/temp/tif1f7~1/obj -fs c:/users/user/appdata/local/temp/tif1f7~1/obj -ft c:/users/user/appdata/local/temp/tif1f7~1/obj -ppa -ppd --pp_directory=c:/users/user/appdata/local/temp/tif1f7~1/obj, ...) failed.
    make (e=2): The system cannot find the file specified.
    Makefile:962: recipe for target 'c:/users/user/appdata/local/temp/tif1f7~1/obj/catrig.obj' failed
    gmake.exe: *** [c:/users/user/appdata/local/temp/tif1f7~1/obj/catrig.obj] Error 2
    >> ERROR: mklib: gmake error during rts6600_elf_opt0.lib build

  • The compiler executables also need to be in the PATH.  I'm sorry I didn't tell you this before. In your case, add this ...

    C:\Users\user\ccsv8\tools\compiler\ti-cgt-c6000_8.2.4\bin

    ... to the PATH.

    Thanks and regards,

    -George