Hallo,
ich hab ein kleines Problem mit meinem Makefile. Ist mein erstes, und auch ganz klein, daher auch einfach nur ein Verständnisproblem, bei dem mir die gefundenen Tutorials nicht weiterhelfen.
Ich habe ein C Programm (6_1.c) und eine zugehörige Funktion, die ich per
#include "uint_input.c"
im Hauptprogramm einbinde. Mein Makefile sieht dann so aus (ist doch klein genug um es direkt zu posten?):
CC=cc
#Ziel uintfcopy
uintfcopy: 6_1.o
$(CC) -o uintfcopy 6_1.c -lm
#Abhängigkeitsliste
6_1.o: 6_1.c
$(CC) -c 6_1.c
Funktioniert auch. Aber meine Professorin möchte das (wahrscheinlich auch berechtigt) so haben, dass die Funktion kompiliert und mit gelinkt wird. Und ich soll sie als Headerdatei includen.
Meine Fragen (nein, Prof ist dafür leider kein Ansprechpartner):
1. Headerdatei=einfach umbennenen in .h statt .c? Oder ist ein headerfile schon kompiliert? Muss ich dann im Makefile das Headerfile kompilieren?
2. Wie sieht dann das Linken aus?
Wenn ihr ein vernünftiges Tutorial kennt, wo eben solche Sachen auch erwähnt werden, ich lese gerne..
Bin dankbar für jede Hilfestellung!
simples Makefile und doch Probleme
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Kompilieren:
Linken:
Außerdem brauchst du noch einen Header uint_input.h (indem die Funktion aus uint_input.c deklariert wird), den du in 6_1.c einbindest.
Tutorial gibt es hier, als Teil des GNU C Tutorials.
Code: Alles auswählen
gcc -c uint_input.c
gcc -c 6_1.c
Code: Alles auswählen
gcc -o uint_fcopy uint_input.o 6_1.o -lm
Tutorial gibt es hier, als Teil des GNU C Tutorials.
Zuletzt geändert von Spasswolf am 26.11.2006 15:37:36, insgesamt 1-mal geändert.
Da dir wohl noch nicht ganz klar ist, was eine Header-Datei überhaupt ist.
http://de.wikibooks.org/wiki/C-Programm ... ene_Header
http://de.wikibooks.org/wiki/C-Programm ... ene_Header
MfG GoKi
:wq
:wq