Forum: Compiler & IDEs multiple definition of ERROR?


von Dr.Doof (Gast)


Lesenswert?

Hallo,

ich weiß, dass "multiple definition of" durch den fehlerhaften Gebrauch 
von extern kommt, (oder kommen kann?).

Ich fürchte aber, dass es ein anderes Problem ist, da a) es eigentlich 
ein CMake Projekt ist, bei dem ich jetzt meine eigenen Makefiles 
benutze; b) die Fehlermeldung an Stellen im Programm zeigt, wo die 
Variablen/Funktionen gar nicht genutzt werden.

Egal, ist die "multiple definition of" immer ein Error, der zum 
Link-Abbruch führt, oder ist das (nur) eine Warnung.
Das ist von der Ausgabe nämlich nicht ersichtlich.
Danach bricht Linking aber ab, da eine Lib nicht gefunden wird.
Ist das ein Folgefehler?

von Karl H. (kbuchegg)


Lesenswert?

Dr.Doof schrieb:

> benutze; b) die Fehlermeldung an Stellen im Programm zeigt, wo die
> Variablen/Funktionen gar nicht genutzt werden.

Das könnte ein Hinweis sein, dass du gar nicht den Code 
compilierst/linkst, den du glaubst zu compilieren/linken. Sowas kommt 
manchmal vor, wenn man ein Kuddelmuddel in den Pfadangaben (speziell bei 
Angaben von Include-Directories) hat.

> Egal, ist die "multiple definition of" immer ein Error, der zum
> Link-Abbruch führt, oder ist das (nur) eine Warnung.

Es kommt zwar auf den Linker an, aber streng genommen ist es ein Error. 
Die Tatsache, dass manche Linker das trotzdem erlauben und die 
Einzeldefinitionen dann doch zusammenführen, ändert daran nichts.

> Danach bricht Linking aber ab, da eine Lib nicht gefunden wird.
> Ist das ein Folgefehler?

Höchst wahrscheinlich: Nein.

von Dr.Doof (Gast)


Lesenswert?

Danke, so muss Hilfe sein.

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.