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.




Reply via email to