C++ komplieren und Linken

Diskutiere das Thema C++ komplieren und Linken im Forum Mac OS Entwickler, Programmierer. Hallo zusammen, hab einige Einträge im Forum gefunden, wie man eine einzige cpp kompiliert, jedoch leider nicht...

tconz

Mitglied
Thread Starter
Mitglied seit
21.02.2005
Beiträge
151
Hallo zusammen,

hab einige Einträge im Forum gefunden, wie man eine einzige cpp kompiliert, jedoch leider nicht, wie ich mehrere kompilieren kann und diese dann linken. Die "man cpp" ist leider für mich auch nicht sehr verständlich, ist irgendwie ein ziemliches durcheinander.

Wäre toll wenn mir jemand kurz die Befehle posten könnte:

1) cpp Datei kompilieren ohne dass sie sich linkt. (Windows cl /c)
-> compile only

2) Wie ich zwei bis x cpp Dateien kompilieren kann und gleich Linken
(Windws: cl Temp.cpp Test.cpp /link /out:test.exe


Vielen Dank

Tobi
 

CapFuture

Mitglied
Mitglied seit
23.01.2004
Beiträge
1.812
Der --help Parameter ist immer dein Freund:

cpp --help
...
-E Preprocess only; do not compile, assemble or link
-S Compile only; do not assemble or link
-c Compile and assemble, but do not link
...
 

Morfio

Mitglied
Mitglied seit
25.10.2002
Beiträge
215
1. g++ -c datei.cpp -o datei.o
2. g++ datei1.cpp datei2.cpp datei3.cpp -o programm
 

tconz

Mitglied
Thread Starter
Mitglied seit
21.02.2005
Beiträge
151
Hi,
erstmal danke für die schnellen Antworten.

1. g++ -c datei.cpp -o datei.o
2. g++ datei1.cpp datei2.cpp datei3.cpp -o programm


-->1. Geht nicht:
g++ -c funktionen.cpp -o funktionen.o
g++ -c main.cpp -o main.o
g++ -E main.o funktionen.o -o test

habs auch mit -S statt -c probiert, geht auch nicht.

-->2. geht Top. Jedoch wenn ich es dann starten will "user$ programm" oder "user$ /programm" startet es nicht, bringt auch keine Fehlermeldung. Wenn ich es im Finder mit Doppel-Klick starte, gehts?! :(


Thx Tobi
 

Mammut

Mitglied
Mitglied seit
28.12.2004
Beiträge
548
ich muss immer so c++ dateien kopilieren:
c++ -o programmname datei.cpp

und ausführen:
./programmname
 
Zuletzt bearbeitet:

autoexec.bat

Mitglied
Mitglied seit
21.01.2005
Beiträge
2.138
-->1. Geht nicht:
g++ -c funktionen.cpp -o funktionen.o
g++ -c main.cpp -o main.o
g++ -E main.o funktionen.o -o test
Erst

g++ -c funktionen.cpp
g++ -c main.cpp

dann

g++ funktionen.o main.o -o test

Wenn das nicht geht hat dein Programm mit Sicherheit noch irgendwo einen Fehler.

Am besten solltest du sowieso nicht mit g++ -c funktionen.cpp sondern mit g++ -c -Wall -pedantic funktionen.cpp kompilieren. Dann wirst du auch wirklich auf JEDE Fehlerquelle aufmerksam gemacht.

-->2. geht Top. Jedoch wenn ich es dann starten will "user$ programm" oder "user$ /programm" startet es nicht, bringt auch keine Fehlermeldung. Wenn ich es im Finder mit Doppel-Klick starte, gehts?! :(
Da musst du wie schon gesagt wurde ./programm eingeben.
 
Zuletzt bearbeitet:
Oben