Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

mspgcc on Linux

Help
Hein
2007-06-24
2013-03-06
  • Hein
    Hein
    2007-06-24

    I have recently successfully used mspgcc under WinXP to develop software for a client (development PC supplied by client).  This was my first experience with the MSP series of processors.  Now I would like get a working cross-compiler on my SUSE 10.2 (64 bit) machine.

    I have installed cdk-msp (supplied as binaries), but the target is a 1612 processor, which is not supported by the (out of date) cdk-msp.

    I have downloaded all the sources and associated files as described in the "Building mspgcc from source code" pages of the mspgcc manual.  I have successfully built binutils following the instructions.  However, when I try to compile gcc (3.2.3) for the msp430, I get a list of errors.  My SUSE 10.2 uses gcc 4.1.2 (prerelease).

    I _SUSPECT_ the gcc compiler needs to be compiled with gcc 3.2.3, or something slightly after that.  I also suspect changing my machine's gcc might be a significant effort. 

    If there is anybody that has successfully built the mspgcc toolchain under a new(ish) Linux distribution (using gcc 4+), or if someone has found a write-up about the process, I would REALLY appreciate some pointers.  I am reasonably familiar with installing and compiling software, as I've used Linux for a few years, but by no means do I consider myself adept at building from source (read:  I need instructions as if I'm a five-year old :-) )

    Thank you
    Hein

     
    • Hein
      Hein
      2007-06-24

      Follow-up #1

      I have found the source of the error that stopped the build process of gcc:  msp430-ar was not found.  I added a path to the file (I use the default /usr/local/msp430 - the executable msp430-ar is in the bin directory of that path).  Make completed successfully (using gcc 4.1.2) and I could progress to the build of msp430-libc.

      The latest error (assembler error) now reports

      Error: unknown opcode `sfra(dma0sa,'

      in the file dma.h.  This is during the build of msp430-libc.

      I will keep posting updates in case of any success.

      Hein

       
    • Hein
      Hein
      2007-06-24

      Follow-up #2

      In the file "iomacros.h" in the include directory, I found "sfrw_", "sfra_" and "sfrb_" defined, with "sfrw" and "sfrb" defined as "sfrw_" and "sfrb_" respectively, and added a line to define "sfra" as "sfra_".  This solved the "unknown opcode" error.

      I also needed to ad two directories in the msp430-libc/src directory, namely msp1 and msp2 (make complained about not being able to create files in those directories).

      msp430-libc then compiled and installed.  I'm not sure how successfully.

      At this stage (before building gdb and insight) I tried to compile my program (which works under the Windows installation).  It is a fairly large program (just about fills the 1612 memory).  Trying to compile gave an error (Segmentation fault) with a reference to one of my source files.

      I deleted about a thousand lines of code, recompiled, and what-do-you-know - it does not know the 1612 processor (just like cdk-msp where I started).  This is not what I expected... :-(

      Hein