Compiler Updates

From Texas Instruments Wiki
Jump to: navigation, search

Overview

It is possible to update your compiler from within the CCS environment as well as outside the CCS environment.  For instructions on how to install a compiler outside of CCS and the select it within CCS please see the following topic: Compiler Installation and Selection

This wiki article will cover how compiler updates work within CCS including bug fix updates and and feature updates.  For the purposes of this article a bug fix update is defined as an update that only impacts the last portion of the version number.  A minor feature update is defined as one that impacts the middle portion of the version number and a major feature update is defined as one that impacts the first portion.

For example if you had the 5.0.1 compiler then:

  • 5.0.2 is a fix update
  • 5.1.0 is a minor feature update
  • 6.0.0 is a major feature update

More details on compiler version numbers is documented on this page.

It is possible to have more than one version of the compiler installed and to have different projects using different versions of the compiler.  Thus it is necessary to be able to deliver updates to different versions.  For example if you had an older project it may be using the 5.0.1 compiler.  Occassionally you may need to make updates to the code and you want to make as few changes as possible.  You would likely not want to make a significant change to the compiler being used to this project but if there was a bug fix release (say 5.0.2) that addressed a specific issue then you would want to be able to update to it.  You also have another project that is much newer and is under active development.  For this one you are going to want to use the latest compiler that has the best performance and code size available (say 6.0.0).  As it is early in its life-cycle you will be willing to pick up newer versions of the compiler as they are released.  Thus for this user it is important that they be able to update both the 5.0.x compiler stream and the latest compiler stream.  The reason this is being described is because it has an impact on the way updates work in CCS.

Compilers are Features

CCS is based on the Eclipse software framework and in Eclipse for an item to be able to be updated via the update mechanism it has to be a feature.  You can also only get updates to the latest version of a feature that is installed.  Thus inorder to support updates to different versions of the compiler we have to structure our features appropriately.  Features have a name and a version: <feature>_<version>.  To be able to update the 5.0.x stream and another stream like 5.1.x or 6.0.x they have to be seen as different features to Eclipse.  Thus we name our features such that the first 2 portions of the version are part of the feature name.  For example the 5.0.1 version of the msp430 compiler for windows would have a name like this: com.ti.cgt.msp430.5.0.win32_5.0.1  As you can see there is a 5.0 in the feature name.  Thus if we also had the 5.1.2 version installed we would have a feature: com.ti.cgt.msp430.5.1.win32_5.1.2  This way we have 2 separate features present that can both be updated.

Checking for Updates

Update existing features

When you run the update check in CCS it will find updates to existing features. You can also use the menu 'Help -> Check for Updates' option to look for updates.

For example, if you had the 5.0.0 compiler installed, any 5.0.x release would be an update to that feature and would show up automatically when you check for updates.

Install new features

The update check does not find "new" features.  To find new features you have to instead select the menu 'Help -> Install New Software'.  This is necessary because of the way we have named our features; some of them are updates and some of them are new features.

For example, if you had the 5.0.0 compiler installed, when 5.1.x or 5.2.x or 6.0.x come out they would not show up as an update to 5.0.0 as they are considered a new feature.

To install a new feature release you have to select the menu 'Help -> Install New Software'. In the "Work with:" drop-down, select "Code Generation Tools Updates", then select the version of Compiler tools you wish to install. Here you have the option to pick the latest version or any of the older versions available on a compiler stream. For detailed steps, check this page. Once you have installed a new version, then when you check for updates, you would see updates to both compiler streams. For an example of how to use the "Install New Software" feature, see the video in the next section below.

CCS App Center

If you are using CCSv6 or greater, you can also use the CCS App Center to check for compiler feature updates as shown in the video below. The CCS App Center will install the latest compiler version available (the latest version in the latest release stream). So it is equivalent to going to 'Help -> Install New Software' and choosing the latest version available. There isn't a way to select and install a specific older version using the App Center.

Installing Older Versions

As stated earlier, you can only get updates to the latest version of a feature that is currently installed. For an example, if compiler version 5.1.5 was installed with CCS, you will not be able to install an older version with the same feature ID (5.1.0 through 5.1.4).

To workaround this, you could uninstall the 5.1.5 version and then install the 5.1.4 version. To uninstall, go to Help -> About -> Installation Details, select the desired version of Compiler Tools and click Uninstall. This will just remove the eclipse feature and not the actual binary files so the compilers will still be there. It is simply a way to trick Eclipse into allowing you to install the older version. You can then find and install version 5.1.4 as shown in the video below: