[VC++ 2010] Linker nie widzi funkcji...
Witam!
Mam trochę dziwny problem... (przynajmniej dla mnie :P). Linker (nie wiem czemu) wywala mi coś takiego:
1>Debug\FileListing.obj : warning LNK4042: object specified more than once; extras ignored
1>FileInfo.obj : 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> > const &)" (?md5@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV12@@Z) referenced in function "public: bool __thiscall FileInfo::UpdateInfoFromFile(wchar_t const *)" (?UpdateInfoFromFile@FileInfo@@QAE_NPB_W@Z)
1>main.obj : error LNK2019: unresolved external symbol "public: bool __thiscall FileListing::AddToFileList(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >,bool,class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >)" (?AddToFileList@FileListing@@QAE_NV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@_N0@Z) referenced in function _main
1>D:\C++\My projects\testy itp\MrowqaUpdatePrototype\Debug\MrowqaUpdatePrototype.exe : fatal error LNK1120: 2 unresolved externals
(nie wiem czemu, ale wcześniej pod Release miałem tylko jeden błąd... bez zmiany kodu teraz mam dwa -_-' / pod Debug cały czas były oba błędy).
Co do ostrzeżenia linkera... o co chodzi z tym? Mam tylko jeden plik "FileListing.cpp", więc jakim prawem tworzy się kilka *.obj?
Wracając do problemu... Jest taki, że nie wiem, czemu wywala te błędy... IntelliSense normalnie widzi funkcje ;/ Nie wiem w czym mam błąd.
Oto moje "drzewko inkludowania" plików (skrócone, całe liczy aktualnie 30+ plików ;P):
----main.cpp
MrowqaUpdate.h
----MrowqaUpdate.h
FileListing.h
FileInfo.h
md5.h
----FileListing.cpp
FileListing.h
----FileInfo.cpp
FileInfo.h
----md5.cpp
md5.h
W plikach *.h są deklaracje rzekomo "brakujących" funkcji, w plikach *.cpp - ich definicje. O co z tym chodzi? -_-' Powinno działać! :/
/edit:
Nie wiem czemu, zawsze długo myślę i nic nie wymyślę, a jak wyśle na forum to znajduję odpowiedź :P Udało mi się zlikwidować problem z md5... Kodzik ściągnąłem z neta i zapomniałem definicji funkcji tam przerobić :P
Reszta jednak nie działa. Kompiluje się dopiero wtedy, gdy doinkluduję w
main.cpp plik
FileListing.cpp -_-'
Pozdrawiam,
Mrowqa