Makefile erzeugt keine brauchbare .cof Datei

Gast #180642
Lesenswert?

Hallo Zusammen,
hatte bis jetzt auf meinem alten PIII Winavr aus 2003 benutzt, konnte
auch prima debuggen (mit A Studio 3.56)

Nun hab ich 3Ghz, AVR Studio 4.11 und Winavr aus 2005
Ich habe das makefile aus Sampels kopiert, Target, MCU eingetragen und
weiter unten hinter build noch extcof angefügt. (wie in der Anleitung
beschrieben)

Wenn ich die .cof Datei mit Avr Studio öffne wird nur hexcode
angezeigt
Es erscheint unter anderem die Meldung:
Coordinator The object file does not contain source code information.

Ich bekomme den folgenden Output beim compilieren:


> "make.exe" all

-------- begin --------
avr-gcc (GCC) 3.4.3
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.


Compiling: test.c
avr-gcc -c -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=8000000UL  -Os
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Wa,-adhlns=test.lst  -std=gnu99 -MD -MP -MF
.dep/test.o.d test.c -o test.o

Linking: test.elf
avr-gcc -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=8000000UL  -Os
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Wa,-adhlns=test.o  -std=gnu99 -MD -MP -MF
.dep/test.elf.d test.o --output test.elf -Wl,-Map=test.map,--cref
-lm

Creating load file for Flash: test.hex
avr-objcopy -O ihex -R .eeprom test.elf test.hex

Creating load file for EEPROM: test.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O ihex test.elf test.eep

Creating Extended Listing: test.lss
avr-objdump -h -S test.elf > test.lss

Creating Symbol Table: test.sym
avr-nm -n test.elf > test.sym

Converting to AVR Extended COFF: test.cof
avr-objcopy --debugging --change-section-address .data-0x800000
--change-section-address .bss-0x800000 --change-section-address
.noinit-0x800000 --change-section-address .eeprom-0x810000  -O
coff-ext-avr test.elf test.cof
avr-objcopy: test.elf: no recognized debugging information

Size after:
test.elf  :
section           size      addr
.text              112         0
.data                0   8388704
.bss                 0   8388704
.noinit              0   8388704
.eeprom              0   8454144
.debug_aranges      20         0
.debug_pubnames     27         0
.debug_info        116         0
.debug_abbrev       65         0
.debug_line        161         0
.debug_str         103         0
Total              604


AVR Memory Usage:
-----------------
Device: atmega8

Program:     112 bytes (1.4% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)


-------- end --------


> Process Exit Code: 0

Liegt es an meinem Makefile?
Hätte vielleicht jemand ein funktionsfähiges für mich?


Vielen Dank im Voraus

Axel
Gast #180643
Lesenswert?

Hi

mit dem neuen AVRStudio und WINAVR kannst du mit ELF/DWARF2 debuggen
und brauchst keine COFF-Dateien mehr. Verwende einfach Mfile um deine
makefiles zu erstellen. Da kannst du dann alles nötige einstellen.

Matthias
Gast #180646
Lesenswert?

@mthomas:

> Wie bereits gesagt: dwarf-2 ist die bessere Wahl auf MS-Systemen.

Würde ich nicht so stehen lassen. Bezogen auf AVRstudio gebe ich Dir
Recht, aber es gibt noch andere Tools zum Simulieren wie zB VMLAB die
dwarf-2 nicht unterstützen.

Volkmar
Gast #180648
Lesenswert?

Mir ging es nicht um die Beurteilung ob AVRstudio oder VMLAB oder
welches Tool auch immer das Bessere ist. Mir fiel nur die pauschale
Darstellung auf. Und VMLAB war dabei nur ein Beispiel für ein Tool,
welches COFF (bzw. EXT-COF) benötigt.

Volkmar

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