Hi, I'm new to MSP in general - I'm trying to use it because I've got a few MoteIV T-Mote Sky's on me that I'd like to use (for more info, see here: http://www.moteiv.com/products/tmotesky.php )
I'm trying to make it work under Gentoo Linux. First I tried with ebuilds created by Matthias Transier, found here: http://www.informatik.uni-mannheim.de/pi4.data/content/projects/msp430/ - but I encountered some issues. So I tried to follow the manual, describing installing mspgcc from source: http://mspgcc.sourceforge.net/manual/c1685.html My experiences: - one has to update the CVS server name, from cvs.sourceforge.net to mspgcc.cvs.sourceforge.net, as SourceForge have changed their policy a while ago. Thus the proper way to get mspgcc source from the CVS is: export CVSROOT=:pserver:[email protected]:/cvsroot/mspgcc export CVS_RSH=ssh cvs login (note the different in the CVSROOT host name) a side note: one doesn't actually have to use CVS_RSH=ssh, it works just fine without using ssh access.. - binutils 2.16 compiles fine as described (though the documentation talks about 2.14) maybe the documentation could be updated for a more recent version? - gcc 3.2.3 compiles fine as described. I also tried the patches for gcc-4.0.2 and gcc-4.1.1, see below. (are these supposed to work?) - msp430-libc compiles fine as described though the manual change for the prefix is a bit cumbersome, and is not needed, in fact. the following works just fine: make prefix=$prefix make install prefix=$prefix the documentation might be updated with this simpler invocation - I couldn't get gdb compiling the documentation talks about gdb 5.1.1, but I can't find the sources for this version on the gdb download page http://ftp.gnu.org/gnu/gdb/ , only for later versions. I tried different versions / approaches, but all failed: gdb 6.6: doesn't compile: configure: error: "*** Gdb does not support target msp430-unknown-none" gdb 5.3, 5.2.1: doesn't compile: Configuring for a x86_64-unknown-linux-gnu host. Invalid configuration `msp430': machine `msp430' not recognized Unrecognized target system name msp430. gdb 6.6: using mspgcc-cvs/cvs/gdb/gdb-current, doesn't compile: make[3]: Entering directory `/home/maroy/src/tyrell/src/corpora/tmote/tmp/gdb-6.6/sim/msp430' gcc ../.././sim/msp430/../common/gentmap.c -o gentmap -g -O -I. -I../.././sim/msp430 -I../common -I../.././sim/msp430/../common -I../../include -I../.././sim/msp430/../../include -I../../bfd -I../.././sim/msp430/../../bfd -I../../opcodes -I../.././sim/msp430/../../opcodes @INCINTL@ gcc: @INCINTL@: No such file or directory gdb 5.3: using mspgcc-cvs/cvs/gdb/gdb-5.4, doesn't compile: Configuring for a x86_64-unknown-linux-gnu host. Invalid configuration `msp430': machine `msp430' not recognized Unrecognized target system name msp430. - I didn't try insight nor gdbproxy - I didn't try JTAG either, as I don't know what it is for :) - compiling a simple test C source file works fine, after having binutils, gcc and libc installed though the classic Hello, World! app doesn't - it gives some puts() errors. I guess stdio.h just doesn't work on this platform. Akos PS: I saw patches for gcc-4.0.2 and gcc-4.1.1, and tried them. for gcc-4.0.2, I got the following error: /home/maroy/src/tyrell/src/corpora/tmote/tmp/gcc-4.0.2-objdir/gcc/xgcc -B/home/maroy/src/tyrell/src/corpora/tmote/tmp/gcc-4.0.2-objdir/gcc/ -B/home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/bin/ -B/home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/lib/ -isystem /home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/include -isystem /home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/sys-include -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -DDF=SF -Dinhibit_libc -g -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../gcc-4.0.2/gcc -I../../gcc-4.0.2/gcc/. -I../../gcc-4.0.2/gcc/../include -I../../gcc-4.0.2/gcc/../libcpp/include -DL_mulvdi3 -c ../../gcc-4.0.2/gcc/libgcc2.c -o libgcc/./_mulvdi3.o ../../gcc-4.0.2/gcc/libgcc2.c: In function ‘__mulvdi3’: ../../gcc-4.0.2/gcc/libgcc2.c:395: error: could not split insn (insn 8 845 9 ../../gcc-4.0.2/gcc/libgcc2.c:277 (set (mem:DI (plus:HI (reg/f:HI 1 r1) (const_int 58 [0x3a])) [13 v+0 S8 A8]) (mem/i:DI (mem/f:HI (plus:HI (reg/f:HI 1 r1) (const_int 48 [0x30])) [11 S2 A8]) [5 v+0 S8 A16])) 66 {movdi} (insn_list:REG_DEP_TRUE 6 (nil)) (nil)) ../../gcc-4.0.2/gcc/libgcc2.c:395: internal compiler error: in final_scan_insn, at final.c:2508 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. for gcc-4.1.1, I got the following error: /home/maroy/src/tyrell/src/corpora/tmote/tmp/gcc-4.1.1/host-x86_64-unknown-linux-gnu/gcc/xgcc -B/home/maroy/src/tyrell/src/corpora/tmote/tmp/gcc-4.1.1/host-x86_64-unknown-linux-gnu/gcc/ -B/home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/bin/ -B/home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/lib/ -isystem /home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/include -isystem /home/maroy/src/tyrell/src/corpora/tmote/usr/msp430/sys-include -O2 -O2 -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -DDF=SF -Dinhibit_libc -g -fno-inline -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../.././gcc -I../.././gcc/. -I../.././gcc/../include -I../.././gcc/../libcpp/include -fexceptions -c ../.././gcc/unwind-dw2-fde.c -o libgcc/./unwind-dw2-fde.o ../.././gcc/unwind-dw2-fde.c: In function ‘__register_frame_info’: ../.././gcc/unwind-dw2-fde.c:108: error: unrecognizable insn: (call_insn/j 15 14 16 0 ../.././gcc/unwind-dw2-fde.c:107 (parallel [ (call (mem:HI (symbol_ref:HI ("__register_frame_info_bases") [flags 0x3] <function_decl 0x2ab39952e000 __register_frame_info_bases>) [0 S2 A8]) (const_int 0 [0x0])) (return) (use (const_int 999 [0x3e7])) ]) -1 (nil) (expr_list:REG_EH_REGION (const_int 0 [0x0]) (nil)) (expr_list:REG_DEP_TRUE (use (reg:HI 15 r15)) (expr_list:REG_DEP_TRUE (use (reg:HI 14 r14)) (expr_list:REG_DEP_TRUE (use (reg:HI 13 r13)) (expr_list:REG_DEP_TRUE (use (reg:HI 12 r12)) (nil)))))) ../.././gcc/unwind-dw2-fde.c:108: internal compiler error: in extract_insn, at recog.c:2084 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions.
