Nich lösbarer Fehler bei Build

OP #2128335
Lesenswert?

#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 #2128945
Lesenswert?

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.
Moderator #2129091
Lesenswert?

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.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren