Thanks Peter! I've successfully compiled msp430-elf-gcc 4.9 using those instructions on a 64-bit Linux host.
For anyone else new to this GCC build, here's the additional steps I used to get the headers & linker scripts into the correct place: Download the GCC_RH_20131206.zip file from http://www.ti.com/tool/msp430-gcc-opensource (click "Get Software") Modify this shell script (tested under Linux only so far) to install the headers and linker scripts (change paths to install and zipfile): https://gist.github.com/spirilis/115655b9bf206402ff50 This combines memory.ld and peripherals.ld into lib/<part#>.ld as Peter suggested was needed in his quoted message. It also cleans up the ldscript directories from the include/ dir. I have successfully compiled a binary with it. ... but haven't tried it on actual hardware yet :-) Getting to that soon. On Tue, Apr 22, 2014 at 06:57:55PM +0000, mspgcc-users-requ...@lists.sourceforge.net placed into existence: ] Date: Tue, 22 Apr 2014 10:34:30 -0500 ] From: Peter Bigot <big...@acm.org> ] Subject: [Mspgcc-users] msp430-elf-gcc upcoming release ] To: "GCC for MSP430 - http://mspgcc.sf.net" ] <mspgcc-users@lists.sourceforge.net> ] Message-ID: ] <CAPOJ94PGLz+BkaKm9hWc2RXg2PSBT=9x_m5h0+fvbydtzng...@mail.gmail.com> ] Content-Type: text/plain; charset=UTF-8 ] ] Back in mid April GCC forked off a branch for 4.9.0, which will be the ] first release of GCC that supports the MSP430. I've verified basic ] functionality with: ] ] binutils git://sourceware.org/git/binutils-gdb.git master ] gcc git://gcc.gnu.org/git/gcc.git gcc-4_9-branch ] newlib git://sourceware.org/git/newlib.git master ] ] A couple issues: ] ] * The only headers/linker scripts available are from ] GCC_RH_20131206.zip; memory.ld and peripherals.ld for each MCU need to ] be manually combined to get something binutils can process ] ] * __delay_cycles() didn't get back-ported from the version that TI ] published back in December ] ] msp430-elf-gdb also doesn't appear to work with mspdebug: ] ] (gdb) target remote :2000 ] Remote debugging using :2000 ] Reply contains invalid hex digit 59 ] ] I expect there'll be some issues with newlib as well; it appears to ] use a unique syscall interface that I haven't tried to reverse ] engineer. However, I'm unsure the flags I used are appropriate (they ] derive from the ones used for arm-gcc). I do know that newlib without ] the nano enhancements will not be acceptable for MSP430 work. Insight ] from Red Hat on a complete set of recommended flags known to work ] together would be appreciated. ] ] Below is the script I use for building, with ] /opt/{binutils,gcc,newlib} being git workspaces checking out the ] branches named above. To help ensure the new toolchain is as good as ] possible when it's first released, mspgcc users please try it and ] report problems to Red Hat through whatever mechanism they prefer, ] either here or on the upstream toolchain support lists. ] ] Peter ] ] TODATE=$(date +%Y%m%d) ] PREFIX=/usr/local/msp430-elf-dev-${TODATE} ] rm -rf ${PREFIX} ] export PATH=${PREFIX}/bin:${PATH} ] ] rm -rf binutils && mkdir binutils && cd binutils ] /opt/binutils/configure --prefix=${PREFIX} --target=msp430-elf 2>&1 | tee co ] make -j8 2>&1 | tee mo ] make install 2>&1 | tee moi ] cd .. ] ] rm -rf gcc && mkdir gcc && cd gcc ] /opt/gcc/configure --prefix=${PREFIX} --target=msp430-elf ] --with-newlib --enable-languages=c,c++ 2>&1 | tee co ] make -j12 all-host 2>&1 | tee moah ] make install-host 2>&1 | tee moiah ] cd .. ] ] rm -rf newlib && mkdir newlib && cd newlib ] /opt/newlib/configure \ ] --prefix=${PREFIX} \ ] --target=msp430-elf \ ] --disable-newlib-supplied-syscalls \ ] --enable-newlib-reent-small \ ] --disable-newlib-fvwrite-in-streamio \ ] --disable-newlib-fseek-optimization \ ] --disable-newlib-wide-orient \ ] --enable-newlib-nano-malloc \ ] --disable-newlib-unbuf-stream-opt \ ] --enable-lite-exit \ ] --enable-newlib-global-atexit \ ] --disable-nls ] 2>&1 | tee co ] make 2>&1 | tee mo ] make install 2>&1 | tee moi ] cd .. ] ] cd gcc ] make -j12 all-target 2>&1 | tee moat ] make install-target 2>&1 | tee moiat ] cd .. ] ] ] ------------------------------------------------------------------------------ Start Your Social Network Today - Download eXo Platform Build your Enterprise Intranet with eXo Platform Software Java Based Open Source Intranet - Social, Extensible, Cloud Ready Get Started Now And Turn Your Intranet Into A Collaboration Platform http://p.sf.net/sfu/ExoPlatform _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users