wie main.cpp ausführen?

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

wie main.cpp ausführen?
Wie kann ich die main()-Funktion, die gegeben ist auch ausführen? *.o-Dateien erstellt es mir alle, aber wenn ich eine ausführbare main erstellen will, erscheint nur:

g++ -Wall -o “main” “main.cpp” (im Verzeichnis: /home/**/Desktop/A5b)
/tmp/ccZaw1Br.o: In function main': main.cpp:(.text+0x25): undefined reference to Matrix::Matrix(char const
)’
main.cpp:(.text+0x38): undefined reference to Matrix::Matrix(char const*)' main.cpp:(.text+0x4d): undefined reference to CRSMatrix::CRSMatrix(Matrix&)’
main.cpp:(.text+0x5b): undefined reference to `CRSMatrix::printInternalFormat()’
usw.
.
.
.
collect2: ld returned 1 exit status
Kompilierung fehlgeschlagen.


Ein Blick ins makefile hilft :stuck_out_tongue:
Die ausführbare Datei heißt A5


Habt ihr kein Makefile?! Ahh mein Vorgaenger ist schneller gewesen.
Linken am Beispiel und in bunt:
g++ -o main main.o File01.o File02.o File03.o

=> Du musst auch noch ein main.o erzeugen und dann alles linken.

P.S. Die interessante Farbgebung ist mir gerade erst aufgefallen.


wollt grad mit dem Zeug weng anfangen. Wenn ich kompilier funktionierts auch wunderbar, nur wenn ich dann ./A5 ausfuehre erhalte ich nur die Texteile: “Segmentation fault”.
Ich weiss zwar was das ist, aber wieso bekomm ich den Fehler obwohl ich an den Quelldateien noch nichts veraendert habe?
Gruesse
Eumel


Vielleicht weil da irgendetwas fehlt was du ergaenzen sollst? Vielleicht weil ein Bug drin ist? Vielleicht wegen der spontanten Sonnenerruptionen?


Danke, wusste doch, dass die Lösung wieder viel zu einfach ist :slight_smile:


Auf diese Frage bringe ich den Tipp, den ich immer bringe:

  1. Mit Debug-Informationen kompilieren.
  2. Valgrind ranlassen.

Nachtrag:
Ach so, du hast SP noch nicht durch, sondern hörst es parallel zu AlgoKS. Dann kannst du dir den Tipp gleich für die SP-Übungen merken. :slight_smile: