DDS-C: objcopy Fehler bei .eep

Fragen zur Software des digitalen Funktionsgenerators und des True-RMS-Messaufsatzes bitte hier stellen.
Antworten
kein Pseudonym
träumt vom eigenen c't-Lab
träumt vom eigenen c't-Lab
Beiträge: 7
Registriert: 27.09.2012, 20:24

DDS-C: objcopy Fehler bei .eep

Beitrag von kein Pseudonym »

Hallo, Beim Versuch die DDS-C FW zu übersetzen, bekomme ich mit dem WinAVR 20100110 einen Fehler beim Erstellen des .eep Files:

Creating load file for EEPROM: dds.eep
C:\WinAVR-20100110/bin/avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex dds.elf dds.eep
c:\WinAVR-20100110\bin\avr-objcopy.exe: unrecognized section flag `load --change-section-lma'
c:\WinAVR-20100110\bin\avr-objcopy.exe: supported flags: alloc, load, noload, readonly, debug, code, data, rom, share, contents
make.exe: [dds.eep] Error 1 (ignored)

Makefile Revision ist 1.5 vom 5. Okt. 2012. Das Target .eep sieht folgendermassen aus:
%.eep: %.elf
@echo
@echo $(MSG_EEPROM) $@
-$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O $(FORMAT) $< $@

Sieht aus als wenn objcopy das Ende des section flags nicht erkennt. Weiss jemand Rat?

Danke im voraus,
Burkhard
psclab38
kann c't-Lab-Konstrukteure konstruieren
kann c't-Lab-Konstrukteure konstruieren
Beiträge: 942
Registriert: 25.01.2008, 23:34

Re: DDS-C: objcopy Fehler bei .eep

Beitrag von psclab38 »

Hallo Burkhard,
kein Pseudonym hat geschrieben:Sieht aus als wenn objcopy das Ende des section flags nicht erkennt. Weiss jemand Rat?
Ich hab's unter Linux und WinAVR ausprobiert. Die Kommandozeile macht bei mir nirgendwo Probleme.
Auch AVRStudio4.19 und AtmelStudio6.1 verwenden einen ganz ähnlichen Aufruf...

Grüße
Paul
kein Pseudonym
träumt vom eigenen c't-Lab
träumt vom eigenen c't-Lab
Beiträge: 7
Registriert: 27.09.2012, 20:24

Re: DDS-C: objcopy Fehler bei .eep

Beitrag von kein Pseudonym »

Danke für die Antwort, welche WinAVR-Version benutzt Du?

Gruß,
Burkhard
psclab38
kann c't-Lab-Konstrukteure konstruieren
kann c't-Lab-Konstrukteure konstruieren
Beiträge: 942
Registriert: 25.01.2008, 23:34

Re: DDS-C: objcopy Fehler bei .eep

Beitrag von psclab38 »

Hallo Burkhard
kein Pseudonym hat geschrieben:Danke für die Antwort, welche WinAVR-Version benutzt Du?
  • WinAVR-20080610
    WinAVR-20090313
    WinAVR-20100110
    MHV_4.7.2
Ich weiß leider nicht, was bei Dir schiefläuft aber ich habe mal alle objcopys durchlaufen lassen, die ich auf der Platte habe - mit dem Aufruf aus Deinem Posting:

Code: Alles auswählen

"c:\Program Files\WinAVR-20080610/bin/avr-objcopy" --version 
GNU objcopy (GNU Binutils) 2.18 (WinAVR 20080610)

"c:\Program Files\WinAVR-20080610/bin/avr-objcopy" -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex dds.elf dds.eep 
c:\Program Files\WinAVR-20080610/bin/avr-objcopy: --change-section-lma .eeprom=0x00000000 never used




"c:\Program Files\WinAVR-20090313/bin/avr-objcopy" --version 
GNU objcopy (WinAVR 20090313) 2.19

"c:\Program Files\WinAVR-20090313/bin/avr-objcopy" -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex dds.elf dds.eep 
c:\Program Files\WinAVR-20090313/bin/avr-objcopy: --change-section-lma .eeprom=0x00000000 never used




"c:\Program Files\WinAVR-20100110/bin/avr-objcopy" --version 
GNU objcopy (WinAVR 20100110) 2.19

"c:\Program Files\WinAVR-20100110/bin/avr-objcopy" -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex dds.elf dds.eep 
c:\Program Files\WinAVR-20100110/bin/avr-objcopy: --change-section-lma .eeprom=0x00000000 never used




"c:\Program Files (x86)\MHV AVR Tools/bin/avr-objcopy" --version 
GNU objcopy (GNU Binutils) 2.22.90.20120727

"c:\Program Files (x86)\MHV AVR Tools/bin/avr-objcopy" -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex dds.elf dds.eep 
c:\Program Files (x86)\MHV AVR Tools/bin/avr-objcopy: --change-section-lma .eeprom=0x00000000 never used
Aber im Grunde ist der Aufruf sowieso umsonst, weil das eep-File (absichtlich) leer ist.

Grüße
Paul
Antworten