#include "asuro.h"
int main()
{
Init();
while (1==1)
{
MotorSpeed (90,90);
}
}
Hallo,
wenn ich das oben gezeigte Programm compiliere tritt keine Fehlermeldung
auf, jedoch wenn ich build mache, kommt immer eine Fehlermeldung, an der
ich jetzt schon seit langer Zeit scheitere:
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/lib/avr4/crt
m8.o:(.init9+0x0): undefined reference to `main'
make: *** [MotorenTest1.elf] Error 1
Ich habe die asuro.c und die asuro.h jedoch richtig eingebunden.
Bitte helft mir, mein Problem zu lösen!
LG Oliver
Gast
#2128464
Oliver Müller schrieb: > Ich habe die asuro.c und die asuro.h jedoch richtig eingebunden. Wie und wo? Oliver
ich hab die asuro.h mit: #include "asuro.h" eingebunden und die asuro.c zu den source files hinzu gefügt. Oder ist mit ein Fehler unterlaufen? Vielen Danke schon einmal!
Gast
#2128668
Deine geschweiften Klammern hinter Main dürfen nicht sein! Knut
Gast
#2128669
Knut schrieb: > Deine geschweiften Klammern hinter Main dürfen nicht sein! und warum nicht? main gibt es mit und ohne parameter!
Gast
#2128670
Sorry, verguckt...
Gast
#2128945
Oliver Müller schrieb: > ich hab die asuro.h mit: > #include "asuro.h" > eingebunden und die asuro.c zu den source files hinzu gefügt. > Oder ist mit ein Fehler unterlaufen? Scheinbar nicht bei der asuro.h, aber wenn der gezeigte Code in asuro.c steht wird das File entweder nicht mitcompiliert oder nicht mitgelinkt. Oder versehentlich als C++ compiliert (Name Mangling)? Sagt jedenfalls die Fehlermeldung: der Startcode (was meiner Meinung nach "crtm8.o" ist) ruft main() auf - die nicht zu finden ist. Prüf das nochmal sorgfältig, Du solltest auch irgendwie die wirklichen Aufrufe des Compilers sichtbar machen können - da sieht man die verwendeten Files.
Gast
#2129066
Oliver Müller schrieb: > wenn ich das oben gezeigte Programm compiliere tritt keine Fehlermeldung > auf, jedoch wenn ich build mache, kommt immer eine Fehlermeldung, an der Was ist denn der Unterschied zwischen compilieren unnd "build machen"? Wie sieht das ausgeführte Linker-Kommando aus?
Oliver Müller schrieb: > ich hab die asuro.h mit: > #include "asuro.h" > eingebunden und die asuro.c zu den source files hinzu gefügt. Aber hast du auch die .c-Datei mit dem oben geposteten Code zu den Source-Files hinzugefügt? Wenn nicht, fehlt dem Gesamtprogramm die main-Funktion, und der Linker weist dich mit einer "undefined reference to `main'" darauf hin. Da erst der Linker die einzelnen Funktionen zu einem lauffähigen Gesamtprogramm zusammenbaut, tritt der Fehler beim Kompilieren der Einzeldatei noch nicht auf.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.