Hi all, I would like to share my experience (quite successful ;O) with MSP430X and MSPGCC with Cygwin 1.7.7. Please notice that I'm quite a new to MSPGCC and MSP430X, but this post may help other beginners. Along this post , you'll find some remaining questions, if you have any informations about theses or others, do not hesitate to share them.
To get the compiler working on my cygwin with MSP430X extension, I've simply followed the the simple tutorial: http://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=Building_MSPGCC_from_Source_Code Downloading steps were very ok, but here are some remarks about compilation steps. 1) *** COMPILING BINUTILS *** cd binutils-2.19 patch -p1< ../packaging/patches/binutils-2.19-patch ./configure --target=msp430 --prefix=/opt/msp430-X make ISSUE1: During compilation I got a "segmentation fault" with gcc on arparse.c compilation ==> I just removed (set to empty) the NO_WERROR variable inside the binutils/makefile. make install 2) *** COMPILING GCC MSP430X *** cp -av gcc/gcc-3.3/* gcc-3.2.3 cd gcc-3.2.3 ./configure --target=msp430 --prefix=/opt/msp430-z1 make ISSUE2: Some of the source files (gcc-3.2.3/config.sub, gcc-3.2.3/config.gcc) were containing '\r' (0x15) char. ==> I just get ride of them with commands like: mv config.sub config.sub.old tr -d '\15'< config.sub.old> config.sub BUT notice that i found later that this issuecould have been solved inserting "set SHELLOPTS=igncr" inside "cygwin.bat" just after first line "@echo off" make install ISSUE3: When trying to make Install i got "*** No rule to make target `../libiberty/libiberty.a', needed by `gengenrtl..." ==> I had to recompile manually libiberty: cd libiberty make .. cd .. make install 3) *** COMPILING libc *** cd msp430-libc/src Think about modifying the Makefile: PREFIX = /opt/msp430.X And copy or link your freshly compiled "msp430-gcc.exe" to msp430/bin/gcc.exe then: make make install ISSUE4: On my side make install failed so I just did make install-multilib IMPORTANT NOTE: hardware multiplication is not well supported, hence think about compiling AND linking your futur source code with the option: "--mdisable-hwmul" <Q1> IS THERE ANY WORKS ON IMPROVEMENTS FOR MSP430X.( i.e. support of hardware multiplications, functions pointers etc ...) ? IS THE MSP430X BRANCH STILL ALIVE ? ISSUE5: To get a project correctly linked i had to comment all the source code inside "vuprintf()" function of "vuprintf.c", and recompile and re-install the libc ? <Q2> I'VE READ THAT THERE IS A PROBLEM WITH FUNCTION POINTERS ? There's a first comment about this here: http://comments.gmane.org/gmane.comp.hardware.texas-instruments.msp430.gcc.user/8993 Thanks, but does any one now about a (future) correction in MSP430X ? ISSUE6: Even if compiled with "--mdisable-hwmul" option a source containing a logical shift left on long can't be linked : { long hi; ... hi<<= 1; ... } <Q3> PLEASE HELP FOR THIS ISSUE6 ? ISSUE7: As I have to use an F543xA mcu I had to import all the I/Os definition from msp430gcc 4.4.4 ! (merging MSP430X branch with mspgcc4 would be nice !) mv /opt/msp430.X/msp430/include /opt/msp430.X/msp430/include.old cp -r /opt/msp430-gcc-4.4.4/msp430/include /opt/msp430.X/msp430/include <Q4> DO YOU SEE ANY RISK ABOUT THE SOLUTION TO THIS LAST ISSUE 7 ? ISSUE8: To get some flash access working Add #include "flash.h" inside include/msp430x54xx.h (coming from 4.4.4) Then, I could compile and upload small and "quite big" programs that use extended flash using __attribute__((__far__)) And functions that are in far memory seem to work correctly. NOTE: I use "mspdebug 0.12" and the MSP43F543XA BSL with a flying camp dongle to upload software, That's nice. The only issue is the BSL activation sequence which, for MSP430F543XA, must be inverted on the TEST signal compared to the TI SLAU319a documentation. I have to do more tests now. But if any of you have any comments or other experience with MSP430.X please feedback. Regards -- Pierre-emmanuel ------------------------------------------------------------------------------ What happens now with your Lotus Notes apps - do you make another costly upgrade, or settle for being marooned without product support? Time to move off Lotus Notes and onto the cloud with Force.com, apps are easier to build, use, and manage than apps on traditional platforms. Sign up for the Lotus Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users