mikrocontroller.net

Forum: Compiler & IDEs Programmers notepad - probleme bei make all


Autor: Markus Schmitz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich bin absoluter Neuling in diesem Forum.
Ich habe meinen AVR Mega 32 (RN-Control Version 1.4) mit Bascom
programmiert, möchte jetzt aber zu C wechseln. Hierzu möchte ich
Programmers Notepad verwenden. Einen Makefile habe ich bereits
erstellt, mit make all im Programmers notepad erhalte ich bei meinem
kleinen c-Programm "make.exe: *** No rule to make target
`obj/main.o', needed by `testpp.elf'". Das c-Programm habe ich
testpp.c genannt. Was habe ich denn verkehrt gemacht ?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie hast du das Makefile erstellt, von Hand oder mit einem
Generatorprogramm wie Mfile?

Im Makefile sollte eine Zeile stehen, die mit SRC = anfängt. Dort steht
normalerweise SRC = $(TARGET).c und die Variable TARGET ist vorher in
einer entsprechenden Zeile definiert worden z.B. TARGET = testpp. Das
alles und noch mehr (Prozessortyp, CPU Frequenz...) kann dir ein
Makefilegenerator interaktiv erstellen.

Dokumentationen zu Makefiles findest du hier:
http://winavr.sourceforge.net/install_config_WinAVR.pdf
http://www.mikrocontroller.net/articles/AVR-GCC-Tu...

Wenn du nicht weiterkommst, hänge dein Makefile mal als Text an. Dann
kann man genauer nachsehen, was schiefläuft.

Autor: Markus Schmitz (gurke25)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe mal das makefile angehangen.

Autor: Markus Schmitz (gurke25)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
und hier das c-Programm.
Kann ich denn zum Übertragen die Bascom-Software weiterhin benutzen ?
Wie gehe ich denn dann vor, ich muss doch nur den ihex-File
übertragen?
Schonmal vielen vielen Dank.

Autor: Markus Schmitz (gurke25)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
das 1.Problem habe ich mit Beitrag "Makefile No rule to make target
`obj/main.o'" gelöst.
Ich weiss noch nicht, wie ich das c-Programm über Bascom zum Controller
bekomme. Muss ich im Makefile "Bascom" als Programmer angeben oder
"STK200"?

Autor: Daniel Held (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
warum nimmst Du nicht PN oder WINAVR?

Autor: Daniel Held (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aber zum Controller muss natürlich nur das *.hex file.

Autor: Markus Schmitz (gurke25)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe jetzt mit Programmers notepad versucht, über [WinAVR] Program
den File zu übertragen, aber es erscheint:

> "make.exe" program
avrdude -p atmega32 -P lpt1 -c stk200    -U flash:w:testpp.hex
avrdude: can't open device "giveio"

avrdude: failed to open parallel port "lpt1"

make.exe: *** [program] Error 1

Was passt denn jetzt nicht ?

Autor: Markus Schmitz (gurke25)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... über Bascom kann ich über LPT1 den Controller erreichen

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> avrdude: can't open device "giveio"

Dann solltest du giveio.sys installieren.

Autor: Markus Schmitz (gurke25)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo soll ich das denn installieren, ich habe giveio.sys in das
Projektverzeichnis kopiert, aber ohne Erfolg.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
's ist ja ein Treiber, den muss man doch dem Windows irgendwie
beibringen, oder?  Das pure Kopieren in ein x-beliebiges
Verzeichnis dürfte kaum überzeugend genug für dein Windows sein.

Aber sorry, ich hab' bei Windows zwei linke Hände, alles Daumen.
Ich könnte dir erzählen, wie man einen FreeBSD-Treiber baut,
aber da hättest du das Problem nicht -- FreeBSD hat schon einen
Treiber, mit dem man geordnet auf den Druckerport zugreifen kann
(genauso wie Linux und Solaris sowas haben).

Vielleicht kann dir ja jemand von der Windows-Fraktion erzählen,
wie man diesen Treiber aktiviert.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das steht in den Docs von WINAVR (Winavr\doc\avrdude*\avrdude.pdf
Seite  24).

Es gibt sogar Batchfiles (install_giveio.bat, status_giveio.bat und
remove_giveio.bat)

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

Bewertung
0 lesenswert
nicht lesenswert
Ich habe das selbe problem.

"make.exe: *** No rule to make target
`obj/main.o', needed by `testpp.elf'"

Aber da oben steht keine richtige lösung deswegwn wollte ich mal fragen
wir es gelöst wird. Ich schicke auch mal mein makefile
mit freundlichen grüßen

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Makefile ist die Zeile TARGET = main eingetragen. Daher wird auch ein
main.c gesucht, um daraus das obj/main.o zu machen. Das scheitert, denn
deine Hauptsource heisst testpp.c statt main.c...

Ich würde daher die Zeile im Makefile zu TARGET = testpp abändern.
http://www.mikrocontroller.net/forum/read-2-423859...

Hast du WINAVR? Und wenn ja, welche Version?

Autor: senf24 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen Dank habs hin bekommen.
Ich benutze die version von 04.2006

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.