MSP430 GDB auf Suse 10.1, Installationsproblem

Gast #367850
Lesenswert?

Ich versuche die MSP430 GCC / GDB Toolchain unter Suse Linux 10.1 zu
generieren.
Dafür verwende ich das Script
http://random.linux-site.net/files/mspgcc/build_mspgcc.sh
in der aktuellen Version.
Es hatte bisher gut funktioniert ( Suse 9.3 ).

binutils, gcc und msp430-libc werden compiliert und installiert.

Beim Übersetzen von gdb bekomme ich nun folgenden Fehler, den ich mir
momentan nicht erklären kann.
Es liegt nicht am script, wenn ich gdb nach Anleitung compiliere,
bricht das makefile mit der gleichen Fehlermeldung ab.

Hat jemand eine Idee was fehlt oder sogar eine Lösung?

als root
#
# ./build_mspgcc.sh <username>
~~~~~~~~~
~~~~~~~~~~~
~~~~~~~~~~~~
gcc -c -g -O2    -I. -I. -I./config
-DLOCALEDIR="\"/usr/local/msp430/share/locale\"" -DHAVE_CONFIG_H
-I./../include/opcode -I./../readline/.. -I../bfd -I./../bfd
-I./../include -I../intl -I./../intl  -DMI_OUT=1 -Wimplicit
-Wreturn-type -Wcomment -Wtrigraphs -Wformat -Wparentheses
-Wpointer-arith -Wuninitialized  arch-utils.c
arch-utils.c: In function ‘legacy_extract_return_value’:
arch-utils.c:59: warning: pointer targets in passing argument 4 of
‘gdbarch_deprecated_extract_return_value’ differ in signedness
arch-utils.c: In function ‘legacy_store_return_value’:
arch-utils.c:71: warning: pointer targets in passing argument 3 of
‘gdbarch_deprecated_store_return_value’ differ in signedness
gcc -c -g -O2    -I. -I. -I./config
-DLOCALEDIR="\"/usr/local/msp430/share/locale\"" -DHAVE_CONFIG_H
-I./../include/opcode -I./../readline/.. -I../bfd -I./../bfd
-I./../include -I../intl -I./../intl  -DMI_OUT=1 -Wimplicit
-Wreturn-type -Wcomment -Wtrigraphs -Wformat -Wparentheses
-Wpointer-arith -Wuninitialized  gdbtypes.c
gdbtypes.c: In function ‘recursive_dump_type’:
gdbtypes.c:3059: error: invalid lvalue in increment
make[1]: *** [gdbtypes.o] Fehler 1
make[1]: Leaving directory `/tmp/mspgcc/gdb-6.0/gdb'
make: *** [all-gdb] Fehler 2
Gast #367852
Lesenswert?

Hallo Heinz,
besten Dank für den Tip. Bisher war es so, das der aktuellste GDB wegen
Inkompatibilitäten nicht benutzt werden konnte ( MSP430 Toolchain ).
Möglicherweise gilt das nicht mehr.
Werde es prbieren.

Peter
Gast #367853
Lesenswert?

Hallo Heinz,
gdb 6.4 gibt es auf der angegebenen Adresse nicht mehr, dafür gdb 6.5
Habe es geholt, die msp430 spezifischen Dinge reinkopiert,
es läuft fast bis zum Ende durch, aber nur fast.
Sieht aus wie eine Inkompatibilität von Datentypen.

Peter

make
.........
.......
.....
gcc -c -DHAVE_CONFIG_H     -DPROFILE=1 -DWITH_PROFILE=-1
-DDEFAULT_INLINE=0              -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 -I../../intl
-I../.././sim/msp430/../../intl -g -O2 interp.c
interp.c: In function ‘sim_load’:
interp.c:1573: error: ‘asection’ has no member named ‘_cooked_size’
make[3]: *** [interp.o] Fehler 1
make[3]: Leaving directory `/tmp/mspgcc/gdb-6.5/sim/msp430'
make[2]: *** [all] Fehler 1
make[2]: Leaving directory `/tmp/mspgcc/gdb-6.5/sim'
make[1]: *** [all-sim] Fehler 2
make[1]: Leaving directory `/tmp/mspgcc/gdb-6.5'
make: *** [all] Fehler 2
#
Gast #367854
Lesenswert?

Aus

>make[3]: Leaving directory `/tmp/mspgcc/gdb-6.5/sim/msp430'

schliesse ich, dass da der msp sim nicht gebaut werden kann.
Brauchst Du den ueberhaupt? Vielleicht hat der den gdb vorher ja schon
komplett produziert. Sonst 'make -k' probieren.
Gast #367855
Lesenswert?

der Simulator ist ein sehr wesentlicher Bestandteil der
Entwicklungsumgebung, ohne den geht es nicht.
Habe die Sources schon soweit modifiziert, das der fehlerfrei
übersetzt und gelinkt wird.
Nun scheitert es am linken vom gdb, einige Inkonsistenzen konnte ich
schon beseitigen, geht vorwärts. Es wundert mich nur, das ich
offensichtlich allein das Problem habe. Benutzen alle anderen Windows
oder Suse 9.3?
Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren