www.mikrocontroller.net

Forum: Compiler & IDEs mit WinAvr compilieren (Programmers Notepad [WinAVR])


Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo!
ich weiß nicht ob ich ihr richtig bin.
meine frage,wo liegt der Fehler beim compilieren.

> "make.exe" all
set -e; avr-gcc -MM -mmcu=atmega32 -I. -g -Os -funsigned-char 
-funsigned-bitfields -fpack-struct -fshort-enums -Wall 
-Wstrict-prototypes -Wa,-adhlns=main.lst  -std=gnu99 -DCPU_CLK=8000000 
-DRS232_TX -DUART_TX_BUFFER_SIZE=256 main.c \
  | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > main.d; \
  [ -s main.d ] || rm -f main.d
main.c:30:38: error: ../../AVR/Common/common.h: No such file or 
directory
main.c:31:36: error: ../../AVRCommon/Serial.h: No such file or directory

-------- begin --------
avr-gcc (WinAVR 20100110) 4.3.3
Copyright (C) 2008 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.

make.exe: *** No rule to make target `main.hex', needed by `all'.  Stop.

> Process Exit Code: 2
> Time Taken: 00:00

gruß thomas

: Verschoben durch Moderator
Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neuer60 schrieb:

> meine frage,wo liegt der Fehler beim compilieren.


Steht doch dort!

> main.c:30:38: error: ../../AVR/Common/common.h: No such file or
> directory

ausgehend vom Verzeichnis auf dem main.c liegt, konnte die Datei 
common.h nicht gefunden werden.

Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke:
was muß ich noch machen.

main.c:30:38: error: .?./.?./AVR/Common/common.h: No such file or

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neuer60 schrieb:
> danke:
> was muß ich noch machen.

Das weiß ich nicht.
Ich weiß ja nicht, wie (in welchen Unterverzeichnissen) du deine Files 
auf deiner Festplatte verstreut hast.

Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
c:\servodecoder

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neuer60 schrieb:
> c:\servodecoder


Da liegt dein main.c?

Dann geh mal von diesem Verzeichnis ausgehend 2 Hierarchiestufen höher 
und dann in den AVR Zweig und dann weiter in den Common Zweig. Auf dem 
müsste dann ein common.h liegen.

Oops. da wirst du Schwierigkeiten kriegen, denn von C:\servodekoder 
ausgehend gibt es keine 2 Hierarchiestufen darüber!


In einer Pfadangabe bedeutet jedes .. einfach nur: Das darüberliegende 
Verzeichnis.

Ausgehend von C:\servodekoder\test\neuer60 ist also .. einfach nur das 
Verzeichnis C:\servodekoder\test. Und dessen .. ist das Verzeichnis 
C:\servodekoder

Autor: neuer60 (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
das ist die datei,habe ich aus dem internet.

Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich verstehe das nicht mit Verzeichnis

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neuer60 schrieb:
> ich verstehe das nicht mit Verzeichnis

Dann schau da nach, wo du die Datei her hast, was da dazu steht.

oliver

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mann, mann, mann.
Wo soll das nur hinführen, wenn die Nachwuchsprogrammierer nicht mehr 
weiter wissen, sobald sie die Maus aus der Hand legen müssen.

Du hast doch sowieso alle Dateien auf nur 1nem Verzeichnis. Also 
schmeiss die Pfadangabe aus dem Include-Namen raus und alles ist gut.

Du brauchst doch nur im Explorer nachsehen, wo (auf welchem Verzeichnis) 
die Datei liegt!

Am Beispiel: main.c
Aus
#include "servodecoder/common.h" 
#include "servodecoder/Serial.h"

wird
#include "common.h" 
#include "Serial.h"

und fertig. Das war jetzt wahnsinnig schwer. Schaust du denn in deinem 
Explorer nie in die Titelzeile, wie Pfadangaben geschrieben werden?


Und sag demjenigen, bei dem du das geholt hast einen schönen Gruß. Er 
möge doch bitte ein wenig mehr Sorgfalt walten lassen, wenn er etwas 
veröffentlicht.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neuer60 schrieb:
> ich verstehe das nicht mit Verzeichnis

Das ist ja das eigentlich traurige.
Allerdings bist du da (leider) nicht alleine.
Computer werden heutzutage verkauft, wie die warmen Brötchen beim 
Bäcker. Keiner muss mehr irgendwas können. Hauptsache er kann mit der 
Maus klicken.

Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die antworten:
ihr könnt mich beschimpfen wie ihr möchtet,ich bin 51 Jahre und wollte 
nur für meine Modellbahn den servodecoder haben.ich habe das geändert 
aber es kommen immer noch die Fehler kann es sein das die makefile noch 
geändert werden muß.

gruß thomas

Autor: neuer60 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe es!
in der makefile habe ich das Verzeichnis rausgenommen,ich hoffe das war 
richtig.

thomas

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.