mikrocontroller.net

Forum: Compiler & IDEs define im Makefile geht nicht


Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich mache im Makefile ein define für den Assembler,
der wird von make aufgerufen mit

avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp 
-Wa,-adhlns=../i2cfleury/i2cmaster.lst,-gstabs,-DSDA=4 
../i2cfleury/i2cmaster.S -o ../i2cfleury/i2cmaster.o

Ich möchte also SDA als 4 definieren, jetzt kommt aber die Fehlermeldung

G:\AVR\BIN\..\lib\gcc\avr\3.4.6\..\..\..\..\avr\bin\as.exe: unrecognized 
option `-SDA=4'

Was mache ich falsch?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>G:\AVR\BIN\..\lib\gcc\avr\3.4.6\..\..\..\..\avr\bin\as.exe: unrecognized
>option `-SDA=4'

>Was mache ich falsch?

Du hast -SDA=4 übergeben.

Autor: Hc Zimmerer (mizch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast -D dem Assembler übergeben (in den -Wa-Block geschrieben).  Das 
-D wird aber vom Assembler (s. Manual) ignoriert, somit nimmt er an, 
dass es sich um die zwei zusammengezogenen Optionen -D und -SDA=4 
handelt, daher die Fehlermeldung.

Das -D ist eine Anweisung für den Präprozessor, im Assembler wär's zu 
spät dafür.  Nimm das aus dem -Wa-Block heraus und schreib es als 
eigenständige Option für avr-gcc hin.  Der bzw. dessen Präprozessor ist 
dafür zuständig, also hat auch der es verfüttert zu bekommen.

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hc Zimmerer schrieb:
> Das -D ist eine Anweisung für den Präprozessor, im Assembler wär's zu
> spät dafür.  Nimm das aus dem -Wa-Block heraus und schreib es als
> eigenständige Option für avr-gcc hin.

Danke, das wars

@Holger
deine Posts fallen mir immer wieder auf, du scheinst ein sehr 
unzufriedener Mensch zu sein. Mach doch Mal was anderes als nur am 
Computer zu sitzen:
geh in die Disco, genieße die Natur, such dir ne Frau

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>@Holger
>deine Posts fallen mir immer wieder auf, du scheinst ein sehr
>unzufriedener Mensch zu sein.

Ich hatte einmal -DSDA=4 und -SDA=4 in meinem makefile bei ASFLAGS mit
eingetragen. Bei ersterem gab es keine Fehlermeldung
bei zweitem genau deine Fehlermeldung. Da war ein
Tippfehler wohl naheliegend. Aber es tut mir jetzt
schon leid das ich dir helfen wollte.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.