1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Deutsch
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

compiler Error "mutiple definition of.."

  • insomniac
  • 9. August 2005 um 14:37
  • Unerledigt
  • insomniac
    4
    insomniac
    Mitglied
    Punkte
    130
    Beiträge
    19
    • 9. August 2005 um 14:37
    • #1

    Hallo,
    Ich schreib grad (in DevC++) ein Programm aus mehreren Dateien die eine gemeinsame *.h includen. In dieser wird eine lib (*.a) eingebunden -> leider kommt beim kompilieren der Fehler "multiple definition of ..." des einzelnen Objekts das die lib bereitstellt und in der *.h erzeugt wird.
    Woran kann das liegen? es ist sowohl die *.h der lib als auch die *.h des Projekts mit #defines abgesichert...

    Komischerweise zeigt er bei den Dateien in denen das vorkommt auch "..\Dev-Cpp\include\c++\3.4.2\bits\stl_tree.h" an ( lib verwendet stl-maps)

    main.cpp

    Code
    #include "h1.h"
    
    
    int main(int argc, char *argv[])
    {
    	system("PAUSE");
    	return EXIT_SUCCESS;
    }

    c1.cpp

    Code
    #include "h1.h"
    
    
    int dummy(){		// irgendwas
    	cout<<"ich bin ein dummy"<<endl;	
    	return 0;
    }

    h1.h

    C
    #ifndef _h1H_
    	#define _h1H_
    #include <libown.h>			 // header für lib
    #include <iostream>
    
    
    myini iniWert("config.cfg");	 // kommt aus der lib
    
    
    #endif

    bring folgende Fehlermeldung:

    Code
    ..\Neuer Ordner\c1.o In function `Z5dummyv':
    3 ..\Neuer Ordner\c1.cpp multiple definition of `iniWert' 
    5 ..\Neuer Ordner\main.o: ..Neuer Ordner\main.cpp first defined here 
    5 ..\Neuer Ordner\main.o: ..Neuer Ordner\main.cpp ld returned 1 exit status 
       ..\Neuer Ordner\Makefile.win [Build Error]  [Projekt2.exe] Error 1


    danke im voraus

  • michi204
    26
    michi204
    Mitglied
    Reaktionen
    63
    Punkte
    7.268
    Beiträge
    1.318
    • 9. August 2005 um 16:07
    • #2

    schreib doch die myini-zeile in ein cpp-file :)
    sonst definierst du das selbe symbol ja mehrfach "global", und das geht nicht..

    lg michi

  • insomniac
    4
    insomniac
    Mitglied
    Punkte
    130
    Beiträge
    19
    • 9. August 2005 um 17:22
    • #3
    Zitat von michi204

    schreib doch die myini-zeile in ein cpp-file :)
    sonst definierst du das selbe symbol ja mehrfach "global", und das geht nicht..
    i

    danke, das hat mich auf die richtige Idee gebracht:)
    habs in *.h mit extern deklariert und in einer *.cpp dann erst definiert.

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung

  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  • Deutsch
  • English
Zitat speichern