Jump to content
43oh

MSP430-GCC 3_05_00_00


Recommended Posts

This was posted on the mspgcc-users mailing list.

FYI.

 

Hello GCC-enthusiasts,
We are pleased to announce a new stand-alone & open source release (v3.5.0.0)  of MSP430 GCC available for download here<http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPGCC/3_05_00_00/index_FDS.html>!
The stand-alone package includes all binaries, the source code and MSP430 device specific support files.
The MSP430 GCC build is also available in CCSv6 App Center on all platforms (Windows, Linux and Mac OSX).


Link to post
Share on other sites
  • 2 months later...

Hey!

 

I just bought a new 64bit-only laptop and quickly installed Linux onto it. getting the msp430 cross-compiler was my task for yesterday.

2 days later I am nowhere close to having a valid toolchain like I had on my older 32bit laptop.

 

what has been tried and where it failed:

 

1.  I compiled TI's  msp430-gcc-source.tar.bz2 version 14r1-364 that is based on newlib 2.1

 

  the big problem with this toolchain is the huge difference in output size:

 

    - old setup based on mspgcc with libc:

  >> Building proj.elf as target RELEASE

   text    data     bss     dec     hex filename
  14649       4     480   15133    3b1d proj.elf
 

    - new TI based gcc setup:

  >> Building proj.elf as target RELEASE

   text    data     bss     dec     hex filename
  31938     238     476   32652    7f8c proj.elf
 
which is double the size on the exact same project. most my code no longer links due to 'relocation truncated', 'relocation overflows' and 'section .text will not fit in region ROM' errors.
 

2. current stable gentoo crossdev msp430 target:

it's simply broken. it no longer provides {cc,msp}430* headers and ld files (which were part of a msp430mcu package), if I try to use  msp430-gcc-support-files.zip from the TI website I get inconsistencies between newlib and the .ld files

https://bugs.gentoo.org/show_bug.cgi?id=542380

 

3. I tried to compile the same old (and removed from the tree) mpsgcc version that worked on my old laptop, but compiling of cc crashes due to a double free().

 

I only want a clean toolchain (without any bloat) so I can continue coding. these 3 being my options I guess the right way would be to follow TI's tools, but there should be a way to cut out the cruft from the newlib it comes with. do you have any input on this? maybe a list of safe '--disable-PACKAGE' one can use while ./configure-ing newlib? or a magic gcc CFLAG? 

Link to post
Share on other sites
I only want a clean toolchain (without any bloat) so I can continue coding. these 3 being my options I guess the right way would be to follow TI's tools, but there should be a way to cut out the cruft from the newlib it comes with. do you have any input on this? maybe a list of safe '--disable-PACKAGE' one can use while ./configure-ing newlib? or a magic gcc CFLAG? 

 

This has been brought up a few times, when msp430-elf was initially released.

A flag that generally reduces code size.

-minrt

There is also some information here:

http://forum.43oh.com/topic/1603-mspgcc-output-binary-sizes/

 

Energia will use the gcc-sections commands to remove untouched functions from the final binary. If you're not specifying them with your msp430-gcc-elf build then you will get large code sizes.

Link to post
Share on other sites

There is a newlib-nano option I have heard of when building newlib although I don't know offhand how to enable that.

 

thanks, this looks promising.

 

http://pabigot.github.io/bsp430/msp430elf.html

 

using @@pabigot 's  script I compiled gcc 4.9.3 + simplified newlib and on the same project as above I got

 

 >> Building proj.elf as target RELEASE

   text    data     bss     dec     hex filename
  17456    1094     494   19044    4a64 proj.elf
 
which is pretty nice. thanks Peter!
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...