Code Generation Tools XML Processing Scripts Plug-in for CCS

From Texas Instruments Wiki
Jump to: navigation, search

Introduction

The Code Generation Tools XML Processing Scripts Plug-in for CCS (CG_XML_CCS for short) is an addition to the CCSv4 menu and toolbar that allows developers to use the Code Generation Tools XML Processing Scripts directly from the graphical interface, instead of running them from a DOS Command Prompt.

The Code Generation Tools XML Processing Scripts (CG_XML for short) is a collection of productivity tools that perform post processing of the XML output of the TI's Code Generation Tools, in order to obtain useful information from different types of files such as libraries (.lib), executable binaries (.out, .obj), linker command files (.cmd), etc.

Installation and Requirements

Requirements

Installation

  • Close CCSv4 (if running)
  • Uninstall any previous release of the plug-in via: -
    • Start -> Control Panel -> Add/Remove Programs -> Cgxml Tools for CCS
  • Download the installer from this link
  • Run the installer
The installer asks for the location of the CG_XML Processing Scripts installation directory. Once this is provided, it will use this information to place the bin subdirectory into the system PATH
The installer will also create the environment variable CGXMLCCS_INSTALL_DIR that points to the installation.
  • After running the installer the project Cgxml_config must be imported to the workspace. This project contains the tool configuration launch files and is necessary for the proper operation of the plug-in.
Note: if updating from a previous release, be sure to remove the existing Cgxml_config project from the workspace before importing the newer one.
Just like importing an ordinary project, go to menu Project --> Import Existing CCS/CCE Eclipse Project or go to menu File --> Import --> CCS : Existing CCS/CCE Eclipse Project
Click on the button Browse... at the right of the box Select root directory and browse to the directory where the plug-in was installed.
By default the project is located at C:\Program Files\Texas Instruments\cg_xml_ccs\Cgxml_config

CCSv4 CGXMLCCS Import Project.JPG

Usage

  • Once the plug-in is installed, you should see its icon in the top toolbar CCSv4 CGXMLCCS Icon.JPG and a menu entry in the menu Tools
  • Highlight the desired project (does not have to be the active project, but it must be open) and click either on the small down arrow to select the desired tool or directly on the icon to run the last tool used.
Note: if you want to check which specific build configuration (Debug, Release) the script is running on, make sure the project is set as Active.

CCSv4 CGXMLCCS Favorites.JPG

  • Most of the tools have windows that ask for options to be passed to the CGXML tools. Check carefully the message (an example is shown below):

CCSv4 CGXMLCCS tool options.JPG

  • By default, the utilities run on the executable (.out file) generated by the highlighted project, unless the utilities are explictly designed for libraries or file comparison.
If needed, the highlighted project will be automatically built to generate the .out file.
  • Some utilities require the xml output file generated by the linker (using option --xml_link_info). For these utilities, it is assumed that the user has updated the Project Build options to generate the .xml file and then selected the appropriate file when running the plug-in.
  • Most utilities display the output in the CCS console window.
The output can be copied to the clipboard. Simply right-click on the console window and Select All, followed by Copy <Ctrl-C> and Paste <Ctrl-V>
For some utilities, the output may be too large to fit in the console window. In such cases, right-click on the window, go to Preferences and uncheck Limit Console Output.
  • Some utilities write the output to files rather than to the console window. Please check the messages displayed in the console window to check their location.

 -- Finished.  
    Files were written to the project's Active Build Configuration 
    output directory (Debug, Release or a custom directory).

Help

Online help is automatically installed and can be accessed by going to menu Help --> Help Contents --> Cgxml Tools for CCS

Help for each CG_XML script is located in the subtopic CG_XML Processing Scripts Reference.

Plug-in Limitations

  • In order for the plug-in to properly run, the project under analysis must be in focus. This does not mean the project must be Active, but simply highlighted in the C/C++ Projects View.
This is due to the Eclipse way of having interacting with different elements on the workbench. The focus defines several internal variables used by the plug-in.
If a valid project is not in focus, the console will show in the console:

 -- Error: 
    Are you sure the C/C++ Projects tab is selected 
    and a project is highlighed?

  • There is still an unknown issue where, after installing the tools, the Utilities (Favorites) drop-down menu does not get populated right from the start. Not sure why this happens, but it seems Eclipse takes a while to recognize the environment variable that correctly points to the directory that contains the tool scripts.
Usually running one of the utilities for the first time is enough to fix this:
  • Highlight a project on the C/C++ Projects;
  • Go to Cgxml Tools... and click on the plus sign close to Programs to select a tool - sectti is a good one since it does not require additional parameters.

CCSv4 CGXMLCCS Empty Toolbar.JPG

  • The plug-in does not include the find_dup_syms and load_bps script as they were determined to be out of scope for this project.
  • Currently only Windows version is available.

Sources

The plug-in source code packed in .JAR format is located in the two source files below:

  • Cg_xml_ccs plug-in: download here
  • Help plug-in: download here
Note 1: for some inexplicable reason Internet Explorer arbitrarily renames these files as .zip. Be sure to rename these back to .jar before trying to open them in Eclipse.
Note 2: these files are meant to be opened in Eclipse, not CCSv4!

To probe further

No application can really be considered finished, therefore some additional features are yet to be implemented:

  • The automatic installer and updates via Eclipse Update Site is not yet implemented. The Eclipse Update Site enables a complete automation of the installation and update processes, allowing the developer to be aware of any updates as they become available and install them entirely through the Eclipse IDE.
  • Include details on how to modify launch and batch files for users to customize the tools. This tool is based on the Eclipse External Tools plug-in, therefore instructions can be obtained at this Eclipse Documentation help topic. Also note this forum post containing CCS-specific External Tools enabling details.