Building mspgcc from source code

Binary installers are provided at the mspgcc web-site for some platforms. For others you can build the tools yourself. The source code for everything except msp430-gdbproxy is available for download. Even the majority of the code for msp430-gdbproxy can be downloaded from the mspgcc web-site, where it may be of value to other projects. The only source code which is not available is the library which interfaces to the JTAG port of an MSP430, via the FET tool. This is TI's proprietary code. They have made it available for use in mspgcc, provided the source code is not released.

Shopping list

To build mspgcc from source code you will need the standard GNU source code, and the MSP430 specific source code.

The basic GNU packages

You will need the standard versions of the GNU tools packages, as follows:

The mspgcc specific code

At present, the best way to obtain the MSP430 specific source code is directly from the CVS repository at the mspgcc project web-site, as follows:

export CVSROOT=:pserver:anonymous@cvs.sourceforge.net:/cvsroot/mspgcc
export CVS_RSH=ssh
cvs login
Just press enter when prompted for the password. Then continue with:
cvs checkout gcc
cvs checkout gdb
cvs checkout msp430-libc
cvs checkout jtag
cvs checkout packaging
Do not bother getting the binutils files from CVS. Now the mspgcc binutils code has been merged into the official binutils source tree, these CVS files are unnecessary, and no longer maintained.

Tools required to build mspgcc

If you are using Linux or BSD Unix you probably have all the tools you need already installed on you machine. You just need the basic GNU toolchain - GNU make, GCC, binutils, and basic utilities like tar and bzip2.

If you are using Windows you will need to install cygwin on your machine. Just go to the Cygwin site, and follow the installation instructions (it is really quite simple). Make sure you have at least the following packages installed:

  • GNU make

  • GCC (host installation)

  • binutils (host installation)

  • bzip2 and tar