Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Problem mit makefile

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
30.05.2006, 18:17 Uhr
Steffen



Hallo,

ich habe bis jetzt nur makefiles für Programme geschrieben, die aus .h und .cpp dateien bestanden. Jetzt hab ich alerdings ein Programm, das nur aus zwei .h Dateien besteht und bekomm das ganze leider nicht zum laufen!

so weit hab ich es bis jetzt probiert:


Code:
queue : ArrayPriorityQueueT.o ListPriorityQueueT.o  
    g++ -o queue QueueTest.cpp ArrayPriorityQueueT.o ListPriorityQueueT.o
  
ArrayPriorityQueueT.o : ArrayPriorityQueueT.h QueueEmptyEx.h
    g++ -c ArrayPriorityQueueT.h
  
ListPriorityQueueT.o : ListPriorityQueueT.h QueueEmptyEx.h
    g++ -c ListPriorityQueueT.h





wie muss ich das denn korrekt machen, wenn ich nur .h Dateien habe (und die QueueTest.cpp, inder die main ist) ?

Hab leider nix pasendes über die Suche gefunden und das ganze ist ziemlich dringend...wäre also super wenn mir jemand weiter helfen könnte!

Vielen Dank!

Gruß Steffen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
30.05.2006, 19:09 Uhr
kronos
Quotenfisch
(Operator)


header bindest du typischerweise per #include in deinen programmcode ein...
--
main($)??<-$<='?'>>2?main($-!!putchar(
(("$;99M?GD??(??/x0d??/a:???;a"+'?'/4)
??($??)+'?'/3-2-1+$%2)??''?')):'?';??>
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
30.05.2006, 19:19 Uhr
Steffen



ja, das ist mir schon klar....so ganz unwissend bin ich ja auch nicht .

Das Programm an sich lässt sich kompilieren und läuft perfect. Das Problem ist, dass ich das Programm in eclipse auf meinem Rechner zu hause geschrieben habe. Eclipse erstellt das makefile automatisch, nur kann man das leider nicht einfach rauskopieren. Da ich das Programm auf den Sun's in der Uni vorstellen und selbst compilieren muss, brauche ich ein eigenes makefile.

Ich habe folgene Dateien Datei1.h, Datei2.h, Dateie3.h und eine Datei QueueTest.cpp, in der sich die main befindet....

wie bekomm ich das in ein anständiges makefile ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
30.05.2006, 19:33 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi, also
das .h angeben ist schon korrekt,

das vor dem : ist das target, also z.b dein name der anwendung, nach dem doppelpunkt stehen die abhängigkeiten (die datei anwendung.c/pp wird normalerweise automatisch kompiliert, falls gefunden)

helloworld: datei.cpp datei.h sonstigerheader.h

in dem fall wird, falls man eine der 3(bzw 4) dateien ändert, das programm "helloworld" neu kompiliert.

wenn man

helloworld.o:

schreibt, wird ein objektfile daraus erzeugt

dann z.b

myexecutable: helloworld.o

erzeugt dann daraus das programm, man kann dort aber auch wieder weitere dateien usw angeben.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
31.05.2006, 16:21 Uhr
Steffen



ich habe es jetzt so zum laufen gebracht


Code:
queue : ArrayPriorityQueueT.h ListPriorityQueueT.h QueueEmptyEx.h  
    g++ -o queue QueueTest.cpp ArrayPriorityQueueT.h ListPriorityQueueT.h QueueEmptyEx.h



Ist das so ok, oder habe ich irgendwelche böden Überraschungen zu erwarten wenn ich es dem Prof zeige ?

Ich bin mir nämlich nicht ganz sicher ob ich in der zweitel Zeile g++ -o oder g++ -c schreiben muss
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
31.05.2006, 17:33 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


die .h dateien musste dem g++ nicht angeben, ansonsten

g++ -o queue dateien...

erzeugt aus "dateien" eine anwendung namens "queue"

wenn du -c schreibst, wird nur kompiliert und nicht gelinkt.

ansonsten würde ich so schreiben:


Code:
queue : QueueTest.cpp ArrayPriorityQueueT.h ListPriorityQueueT.h QueueEmptyEx.h  
    g++ -o queue QueueTest.cpp



die .cpp sollte in die abhängigkeiten rein, ich frag mich ob dann in dem fall die g++ zeile überhaupt noch nötig ist.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
31.05.2006, 18:50 Uhr
Steffen



Habs jetzt so wie du geschrieben hast....danke


jetzt, wo ich das ganze endlich compilieren kann, hab ich auch noch einen Fehler gefunden. Ich hab dazu mal einen neuen Thread aufgemacht, da ich beim besten willen nicht darauf komme.

vielleicht fällt dir ja auch dazu was ein ?

www.fun-soft.de/showtopic.php?threadid=15437&time=1149094222

Dieser Post wurde am 31.05.2006 um 18:57 Uhr von Steffen editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: