Please note as of Wednesday, August 15th, 2018 this wiki has been set to read only. If you are a TI Employee and require Edit ability please contact x0211426 from the company directory.

How to rebuild the C6000 RTS

From Texas Instruments Wiki
Jump to: navigation, search

Important Notice

Beginning with CCS 5.1, this build process has been superseded by mklib

How To...

How do I rebuild the C6000 RTS library?

Environment

C6000, Run-Time Support Library, Code Generation Tools

Answer

Rebuilding the RTS that comes with CCSv3.3

To rebuild the RTS that comes with CGTools v6.0.8 (default with CCSv3.3) perform the following steps:

  • Copy the rts.src and ar6x.exe into a temp folder
  • Open a command prompt and change directory to that folder

At this point you can do one of two things. You can either extract all the source and rebuild the library inside CCS, or you can extract only the source file(s) you want to modify and then repack them into the .src file and rebuild it that way.

To rebuild inside CCS:

  • Type in ar6x -x rts.src
  • This extracts the contents of the .src file into the individual source files
  • Modify the source file(s)
  • Create a new project in CCSv3.3 with type .lib
  • Change the build options to whatever you want
  • Rebuild the library

If you want to rebuild the .rts archive via command line:

  • Type in ar6x -x rts.src <filename> <filename> ... (to extract the source files)
  • Modify the source files
  • In the command prompt again type in ar6x -r <filename> <filename> (to replace archive files with the modified files)
  • Copy the rest of the .exe files in the /bin folder into the same temp folder and in the command prompt type: mk6x -o -mo --RTS -mv64+ rts.src -l rts64plus.lib

The second is a bit easier but either should work practically the same.

Rebuilding the RTS from newer versions of CGT

The newer versions of the Code Generation Tools include a makefile and perl script you execute to rebuild the RTS. Please refer to the rtssrc_zip_README.txt file that can be found inside the \lib\rtssrc subfolder created by extracting rtssrc.zip. Alternatively you can create a simple library project and include all the RTS source files then rebuild into a library. The library build process is discussed in the Compiler Guide.

The code generation tools releases typically include a certain default set of runtime libraries built for various combinations of devices/big, little endian/COFF, ELF/exception handling and so on. To see the default options used to build the runtime libraries, take a look at the file mkrts.pl in \lib\rtssrc\SHARED.

The Makefile found in \lib\rtssrc contains the list of libraries and the options used to build each of those libraries, defined by the OPT_XXX macros.

  • To rebuild one of the standard libraries with modified options, modify the OPT_XXX macro and build using: gmake <rtsname>
  • To build a library that is not in the default list of libraries, add a new OPT_XXX macro in the Makefile with the desired set of options, for eg: OPT_6400_custom = $(OPT_ALL) -mv6400 ....

Then build using: gmake rts6400_custom.lib


Note that you would need to add the CGT's \bin folder to your Windows PATH environment variable before running gmake, so the compiler can be invoked during the build process. This can be done temporarily within the command prompt by typing in PATH=<CGT_folder_path>;%PATH%.