Hi Forum,
Ich lerne im Moment C++ und bin jetzt in meinem Tutorial an der Stelle angekommen an dem Übersetzungseinheiten erklärt werden. Da dachte ich mir probierst du es mal aus. Ich erstelle also in meinem Projekt neben der "main.cpp"-Datein noch eine "text.h" und eine "test.cpp".
Inhalt der main.cpp:
Inhalt der test.h:
Inhalt der test.cpp:
Soweit ich das verstanden habe werden test.h und test.cpp zu einer Objektdatei test.o kompiliert und mit der Datei main.cpp gelinkt. Wenn ich jetzt unter Code::Blocks den Kompilierungsvorgang starte erhalte ich jedoch diese Fehlermeldung:
Was mache ich falsch? Muss man in Code::Blocks die Header und die Cpp-Datein noch irgendwie verbinden?
Mfg X4rd3n
Update: Problem gelöst: Man muss beim erstellen von neuen Datein die option build targets angeben. Das habe ich vergessen.
Ich lerne im Moment C++ und bin jetzt in meinem Tutorial an der Stelle angekommen an dem Übersetzungseinheiten erklärt werden. Da dachte ich mir probierst du es mal aus. Ich erstelle also in meinem Projekt neben der "main.cpp"-Datein noch eine "text.h" und eine "test.cpp".
Inhalt der main.cpp:
Code:
#include "echo.h"
int main() {
echo(50);
}
Inhalt der test.h:
Code:
#ifndef ECHO_H_INCLUDED
#define ECHO_H_INCLUDED
void echo (int number);
#endif // ECHO_H_INCLUDED
Inhalt der test.cpp:
Code:
#include <iostream.h>
#include "echo.h"
void echo (int number) {
cout << string;
}
Soweit ich das verstanden habe werden test.h und test.cpp zu einer Objektdatei test.o kompiliert und mit der Datei main.cpp gelinkt. Wenn ich jetzt unter Code::Blocks den Kompilierungsvorgang starte erhalte ich jedoch diese Fehlermeldung:
Code:
D:\Eigene Dateien\Eigene C++ Projekte\My first Project\main.cpp|4|undefined reference to `echo(int)'|
Was mache ich falsch? Muss man in Code::Blocks die Header und die Cpp-Datein noch irgendwie verbinden?
Mfg X4rd3n
Update: Problem gelöst: Man muss beim erstellen von neuen Datein die option build targets angeben. Das habe ich vergessen.
Zuletzt bearbeitet: