- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: WinAVR (Anzeige Speicherbelegung nach dem compilieren)?

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317

    WinAVR (Anzeige Speicherbelegung nach dem compilieren)?

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo,

    meine Frage hat zwar nicht direkt mit der C-Programmierung zu tun, aber ich denke hier passt es am besten rein.

    Im Outputfenster von WinAVR (Programmers Notepad) wurde mir bisher immer beim compilieren angezeigt wie viel Speicher vom Controller schon belegt ist.
    Seit einiger Zeit wird mir diese Funktion nicht mehr angezeigt. Auch eine neuinstallation von WinAVR had dieses Problem nicht beheben können.

    Kann mir da jemand einen Tip geben wie ich diese Anzeige wieder bekommen kann?

    Danke schon einmal
    mfG Henry

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Das liegt nicht an WinAVR, sondern an deinem Makefile.
    Dort muss halt am Ende des Build-Prozesses ein entsprechender avr-size Aufruf stehen.
    MfG
    Stefan

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317
    Kannst Du mir sagen wie der aussehen muss?

    Edit:
    Folgendes steht in meinem Makefile:
    Code:
    # Display size of file.
    HEXSIZE = $(SIZE) --target=$(FORMAT) $(TARGET).hex
    ELFSIZE = $(SIZE) -A $(TARGET).elf
    AVRMEM = avr-mem.sh $(TARGET).elf $(MCU)
    
    sizebefore:
    	@if test -f $(TARGET).elf; then echo; echo $(MSG_SIZE_BEFORE); $(ELFSIZE); \
    	$(AVRMEM) 2>/dev/null; echo; fi
    
    sizeafter:
    	@if test -f $(TARGET).elf; then echo; echo $(MSG_SIZE_AFTER); $(ELFSIZE); \
    	$(AVRMEM) 2>/dev/null; echo; fi
    Edit 2:

    Ich kann allerdings die Datei "avr-mem.sh" nicht im Installationsverzeichnis von WinAVR finden. Wenn ich das richtig sehe, dann wird die dafür benötigt, oder?
    mfG Henry

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Ersetze avr-mem.sh durch:
    $(SIZE) -C
    MfG
    Stefan

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317
    Leider funktioniert das auch nicht.
    Ich habe mittlerweile auch über Umwege die Datei "avr-mem.sh" besorgt und in das bin Verzeichnis kopiert. Leider hilft auch das nicht.

    Ich erhalte im Outpu folgende Meldung in dem Bereich wo die Größe ercheninen soll:
    Code:
    Größe vorher:
          0 [main] sh 8568 fork_copy: user/cygwin data pass 0 failed, 0x46F000..0x474434, done 1804, windows PID 8600, Win32 error 5
    /usr/bin/sh: fork: Resource temporarily unavailable
    make.exe: *** [sizebefore] Error 128
    Die in der Meldung aufgeführten Pfade gibt es allerdings nicht imInstallationspfad.
    mfG Henry

  6. #6
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Und was funktioniert bei meiner Variante nicht?
    MfG
    Stefan

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317
    Da gibt es diese Meldung:
    Code:
    Creating Extended Listing: Lichtbalken_M8.lss
    avr-objdump -h -S Lichtbalken_M8.elf > Lichtbalken_M8.lss
          0 [main] sh 4776 fork_copy: user/cygwin data pass 0 failed, 0x46F000..0x474434, done 1804, windows PID 9260, Win32 error 5
    /usr/bin/sh: fork: Resource temporarily unavailable
    make.exe: *** [Lichtbalken_M8.lss] Error 128
    mfG Henry

  8. #8
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Sieht so aus, als könne die Cygwin-Umgebung keinen neuen Prozess starten.
    Könnte auch ein Windows-Problem sein. Mache mal einen Reboot.
    MfG
    Stefan

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317
    Leider hat auch ein Neustart das Problem nicht gelöst.
    Ich werde für heute die Fehlersuche einstellen, da ich morgen sehr früh raus muss.
    Morgen werde ich dann mal vergleichen was an meinem Notebook anders sit, da funktioniert die Anzeige. Ich befürchte aber da wir nichts groß anders sein.

    gute nacht erst einmal und Danke für die bisherige Hilfe
    mfG Henry

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    04.01.2004
    Beiträge
    317
    Hallo,

    ich habe nun mal nachgesehen ob ich einen Unterschied zwischen den beiden Rechnern finden kann. Außer das auf meinem Desktop PC AVRStudio installiert war konnte ich nichts finden was die Ursache sein kann.
    Leider habe ich auch keine Anzeige nachdem ich AVRStudio deinstalliert habe, also lag es auch nicht daren

    Was genau ist denn die Cygwin-Umgebung? Ist das ein Windowseigener Dienst oder etwas von WinAVR?

    EDIT: Auch an leicht unterschiedlchen makefiles die ich in Verwendung habe liegt es nicht.
    mfG Henry

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad