Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

10.01.2017, 20:43

LNK2019 unresolved external symbol

Kann mir einer das übersetzen? Was kann das Problem sein?

C-/C++-Quelltext

1
2
3
4
5
6
7
Error   LNK2019 unresolved external symbol "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl
 md5(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" 
(?md5@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) referenced in function "public: class std::shared_ptr<class
 ResourceProxyD2D1> __thiscall D2D1Renderer::LoadBitmapFromFileBuffered(class std::basic_string<wchar_t,struct 
std::char_traits<wchar_t>,class std::allocator<wchar_t> >)" 
(?LoadBitmapFromFileBuffered@D2D1Renderer@@QAE?AV?$shared_ptr@VResourceProxyD2D1@@@std@@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@
_W@2@@3@@Z) Trek2DEngine    E:\SSD_17\PRJ\Trek2DEngine\Trek2DEngine\D2D1Renderer.lib(D2D1Renderer.obj)  1

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

10.01.2017, 20:56

Deine Methode D2D1Renderer::LoadBitmapFromFileBuffered() verwendet eine Funktion namens md5() die vom Linker nicht gefunden werden konnte. Vermutlich hast du vergessen, irgendeine .lib zu linken...

3

10.01.2017, 21:23

Danke dot. Da hast du Recht. Die Definitionen, bzw. die md5.cpp fehlte zuvor.

Dennoch trotz einbinden der cpp Datei bleibt die selbe Fehlermeldung bestehen...

Wo kann das Problem liegen. Es kommt mir so vor als ob Änderungen schwer akzeptiert werden. Beispiel. Ich änder den Kompiler, sagt er mir dennoch, dass er den alten Kompiler verwendet hat. Nun hatte ich die md5.cpp hinzugefügt und wieder hat sich nichts geändert. Bzw. ist der Error verschwunden.

4

10.01.2017, 21:57

SOLVED:

Das Problem bestand darin, dass ich den Namen der Lib geändert hatte. Er spuckte daher NeuerName.lib aus. Aber meine Anwendung die sich auf die Lib bezieht, hatte eine Referenz auf AlterName.lib.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

5

10.01.2017, 22:31

Dacht ich mir schon fast dass es sowas sein muss... ;)

Werbeanzeige