Was heißt dieser Fehler beim Kompilieren??
-
Hallo,
ich habe beim kompilieren folgenden Fehler:
/cygdrive/c/DOKUME1/rodo/LOKALE1/Temp/ccbSiz9W.o(.text+0x310):main.cpp: undefined reference to
Re lation<Author, unsigned, std::less<Author> >::subscribe(IndexBase<Author, unsigned, std::less<Author \> >*)' /cygdrive/c/DOKUME~1/rodo/LOKALE~1/Temp/ccbSiz9W.o(.text+0x325):main.cpp: undefined reference to
Re
lation<Author, unsigned, std::less<Author> >::subscribe(IndexBase<Author, unsigned, std::less<Author
> >*)'
collect2: ld returned 1 exit statusobwohl die Funktion subscribe definiert ist!
Woran kann das liegen?
Ich programmier mit dem gnu-Compiler unter Cygwin.Danke und mfg
rodo
-
Hallo,
der Fehler tritt nicht nur bei subscribe auf, sondern bei jeder anderen Funktion von Relation<...> auch!
mfg
rodo
-
Ist Relation eine Template-Klasse und die Methodendefinitionen stehen in einer eigenen Uebersetzungseinheit?
Wenn ja -> das geht nur mit export, und das kann fast kein Compiler.
Also -> alles in den Header
-
Hallo Shade Of Mine,
danke für die Antwort!
Relation ist Template-Klasse und die Implementierung ist in einer eigenen Date.
Normalerweise includier ich am Ende der .h die .cpp.Das hab ich vergessen => hätt ich wahrscheinlich nie mehr gefunden...
mfg
rodo