Forum: Compiler & IDEs [AVR-GCC] makefile SRC und #include


von André M. (pc-fan)


Angehängte Dateien:

Lesenswert?

Hallo,

es geht um den AVR-GCC (Version 1:4.3.5-1) unter Linux (Kubuntu 10.10). 
Ich möchte in meiner main.c uart_init( ... ) aufrufen, bekomme 
allerdings einen Fehler:
undefined reference to 'uart_init'

Wenn ich aus dem makefile aus der SRC Zeile die uart.c lösche und dafür 
ganz unten in der main.c #include "uart.c" schreibe, geht es, aber 
eigentlich ist die Definition im makefile doch normal/besser.

Die UART Library ist die von Peter Fleury.

Was mache ich falsch?

Danke und Gruß
pc-fan

von André M. (pc-fan)


Angehängte Dateien:

Lesenswert?

Hallo nochmal,

ich habe es nun mit einem anderen makefile aus dem Internet probiert, 
mit dem geht es nun!

Warum es mit dem andren nicht ging ist mir schleierhaft.

Ich hab nochmal das funktionierende makefile angehängt.

Gruß
pc-fan

von Stefan E. (sternst)


Lesenswert?

André M. schrieb:
> Was mache ich falsch?

Wenn dein Programm aus separat übersetzten C-Dateien besteht, kannst du 
"--combine -fwhole-program" nicht verwenden.

von André M. (pc-fan)


Angehängte Dateien:

Lesenswert?

Hallo Stefan,

danke für deinen Hinweis, leider kommt nach dem ich --combine 
-fwhole-program auskommentiert habe trotzdem noch der selbe Fehler.

Ich hänge mal das geänderte makefile an, vielleicht findet ja noch 
jemand meinen Fehler.

Gruß
pc-fan

von Oliver (Gast)


Lesenswert?

André M. schrieb:
> vielleicht findet ja noch
> jemand meinen Fehler.

Warum sollte das jemand tun?

Es gibt tools wie diff, mir denen kannst du zwei Dateien vergleichen. 
Such die Unterschiede, dann weißt du mehr.

Und dann gibt es in der avr-gcc toolschain das Programm MFile, das 
erzeugt dir mit ein paar Mausclicks einwandfrei funktionierende 
makefiles.

Oliver

von Stefan E. (sternst)


Lesenswert?

André M. schrieb:
> danke für deinen Hinweis, leider kommt nach dem ich --combine
> -fwhole-program auskommentiert habe trotzdem noch der selbe Fehler.

Nö, bei mir nicht.
Sicher, dass du das veränderte Makefile benutzt hast?

von André M. (pc-fan)


Lesenswert?

Stefan Ernst schrieb:
> Sicher, dass du das veränderte Makefile benutzt hast?

Oh oh, irgendwie war da wohl was durcheinander gekommen, jetzt gehts!

Vielen Dank und Gruß
pc-fan

BTW: Was macht denn das --combine -fwhole-program?

von Stefan E. (sternst)


Lesenswert?

André M. schrieb:
> BTW: Was macht denn das --combine -fwhole-program?

http://gcc.gnu.org/onlinedocs/

von André M. (pc-fan)


Lesenswert?

Hi Stefan,

danke nochmal, jetzt geht alles!

Gruß
pc-fan

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.