Compiler- / Linker-Probleme



  • hi,
    ich habe eine klasse geschrieben, die ich in einem programm verwende. das erste compilieren hat ohne probleme funktioniert. nachdem ich nun aber einige änderungen an der klasse vorgenommen hab und das test-programm neu compilieren wollte nervt der compiler / linker hier mit:

    ------ Erstellen gestartet: Projekt: lib_test, Konfiguration: Release Win32 ------
    
    Kompilieren...
    lib_test.cpp
    Verknüpfen...
    stdafx.obj : error LNK2005: "public: __thiscall crazylog::crazylog(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0crazylog@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z) bereits in lib_test.obj definiert
    stdafx.obj : error LNK2005: "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall crazylog::createLogfilename(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?createLogfilename@crazylog@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V23@0@Z) bereits in lib_test.obj definiert
    stdafx.obj : error LNK2005: "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall crazylog::setPathname(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?setPathname@crazylog@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V23@@Z) bereits in lib_test.obj definiert
    stdafx.obj : error LNK2005: "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall crazylog::setFileExtension(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?setFileExtension@crazylog@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V23@@Z) bereits in lib_test.obj definiert
    Release/lib_test.exe : fatal error LNK1169: Ein oder mehrere mehrfach definierte Symbole gefunden
    

    was zum henker macht der da??? oder: was mach ich falsch???
    ich will doch nur mein programm aktualisieren...

    hoffentlich weiß jemand von euch ein bissl bescheid über die macken/features von M$ VC++. 😉

    ciao, cypoc

    ps: ich benutze visual c++ .net



  • die einfachste methode is projekteinstellung->Dateiausgabe erzwingen

    wenn du ne saubere lösung willst schau dir in der msdn die beschreibung zu LNK1169 an


Log in to reply