Forum: PC-Programmierung Ubuntu terminal mehrere dateien kompilieren.


von Steffen (Gast)


Lesenswert?

Hallo ich habe mal eine Frage ... Ich habe zwei programme unter linux 
programmiert und möchte nun beide gleichzeitig kompilieren...
eine ist die main datei und die andere die datei die ich mit kompilieren 
möchte wie geht das ?
danke schonmal für die antworten!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Also geht es nicht um zwei Programme, sondern um ein Programm, das aus 
zwei C-Dateien bestehen soll?

von Steffen (Gast)


Lesenswert?

ja genau

von Steffen (Gast)


Lesenswert?

Also wenn die eine main.c heißt und die andere test.c wie sieht das dann 
im terminal aus ?
gcc -o .....

von Troll (Gast)


Lesenswert?

Steffen schrieb:
> wie sieht das dann
> im terminal aus ?
>
kommt drauf an, welche Terminalemulation du verwendest: bunt, s/w, w/s 
...

Mal im Ernst du schreibst ein Programm und hast keinen blassen Schimmer, 
wie man es übersetzt? Spätestens hier solltest du mal die Dokumentation 
deines Compilers anfangen zu lesen!

Mahlzeit

von Thomas (Gast)


Lesenswert?

Naja, ich kann das schon nachvollziehen.
Wir haben damals auf der UNI in C die wildesten Algorithmen 
programmieren müssen, aber wie man ein Programm vernünftig strukturiert 
haben wir nie gelernt. Trotzdem kann man das sicher auch gurgeln...

von Yalu X. (yalu) (Moderator)


Lesenswert?

Was meinst du mit "gleichzeitig"?

Willst du einfach nur mit einem einzigen GCC-Aufruf mehrere Dateien
kompilieren? Man kann beliebig viele Quellcode- oder Objektdateien in
die GCC-Befehlszeile packen.

Oder willst du zwei Dateien simultan kompilieren, um dabei zwei Cores
eines Multicoreprozessors zu nutzen? Falls du ein Makefile nutzt, geht
das mit make -j2. Die Option -j<n> bewirkt, dass Make bis zu n Compi-
ler-, Linker- oder sonstige Aufrufe als simultan laufende Prozesse
startet, aber natürlich nur dann, wenn es die gegenseitigen Abhängig-
keiten zulassen.

von Georg A. (georga)


Lesenswert?

Schnell (von Hand):
gcc test.c main.c

Sauber (generisch im Makefile...):
gcc -c test.c -o test.o
gcc -c main.c -o main.o
gcc test.o main.o

Und so einfach zu googeln ist das auch nicht, wenn man nicht die 
richtigen Stichworte hat. Die manpage vom gcc ist ja auch nicht gerade 
besonders übersichtlich...

von PittyJ (Gast)


Lesenswert?

Ich denke, du solltest dich einmal mit
make
und den makefiles beschäftigen. Die sind am Anfang etwas verwirrend, 
erleichtern dann die Arbeit aber ungemein, wenn man viele .c-Dateien 
hat.
Dann wird auch nur das notwendige kompiliert, gelinkt etc.

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.