troian Temat założony przez niniejszego użytkownika |
error LNK2001: unresolved external symbol "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ) » 2015-01-13 18:37:34 Witam, zacząłem korzystać z kompilatora Visual Studio 2013 Update 3 wcześniej kompilowałem ten sam program na VisualStudio 2008 SP1. Wszystko szło bardzo dobrze aż do wysypania się na samym końcu kompilatora, pokazał mi on następujące błędy: 1>cryptlib-5.6.1MT.lib(cryptlib.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ) 1>cryptlib-5.6.1MT.lib(cryptlib.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ) 1>cryptlib-5.6.1MT.lib(gf2n.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_Mutex::_Unlock(void)" (?_Unlock@_Mutex@std@@QAEXXZ) 1>cryptlib-5.6.1MT.lib(gf2n.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_Mutex::_Lock(void)" (?_Lock@_Mutex@std@@QAEXXZ) 1>cryptlib-5.6.1MT.lib(integer.obj) : error LNK2001: unresolved external symbol "private: static void __cdecl std::locale::facet::facet_Register(class std::locale::facet *)" (?facet_Register@facet@locale@std@@CAXPAV123@@Z) 1>cryptlib-5.6.1MT.lib(integer.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z)
Kiedy szukałem informacji w necie znalazłem taką oto poradę aby przerobić void Encode(byte *output, size_t outputLen) const;
Na static void Encode(byte *output, size_t outputLen) const;
Jednak to nic nie pomogło, Bardzo proszę o pomoc gdyż wgl nie wiem jak sobie z tym poradzić i już chyba od 4 czy 5h walczę z tym. |
|
michal11 |
» 2015-01-13 19:48:56 To jest błąd linkera i to chyba dotyczący zewnętrznych bibliotek a nie twojego kodu. Musisz pokazać przynajmniej początki swoich plików żeby można było cos konkretnego powiedzieć. |
|
maly |
» 2015-01-13 19:51:25 Po pierwsze czy masz cryptlib skompilowany dla VS 2013, po drugie czy kompilujesz aplikację z flagą /MT? |
|
troian Temat założony przez niniejszego użytkownika |
» 2015-01-13 19:55:29 Problem z kodem jast taki że składa się on z ponad 100 plików :-( Jeżeli powiesz mi mniej więcej co trzeba pokazać to mogę podesłać Mogę podesłać w których plikach on widzi błąd bo to mam dokładnie pokazane, chodzi tutaj o 2 pliki w sumie o 3 pliki Mam podesłać ich kod ? cryptlib - Nie wiem, ja po prostu odpaliłem kompilator i wysypał taki błąd, Ciekawe jest to że kiedyś kompilował mi to bez problemu, bo zaczynałem właśnie od 2013 i kompilowało się, nie wiem czy po Update się coś zepsuło czy co i zauważyłem że na 2008 kompilowało dobrze więc zostałem na 2008, jednak po pewnym czasie zaczęły się problemy, jaka kolwiek próba edycji kodu kończyła się wywaleniem kompilatora, więc postanowiłem wrócić na 2013 jednak problem nie zniknął. Nie rozumiem flagi /MT ? Przykłądowy błąd, tak samo pokazuje przy plikach: gf2n, cryptlib oraz integer Error 109 error LNK2001: unresolved external symbol "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z) D:\Client\UserInterface\cryptlib-5.6.1MT.lib(integer.obj) UserInterface
|
|
maly |
» 2015-01-13 20:07:10 |
|
troian Temat założony przez niniejszego użytkownika |
» 2015-01-13 20:14:37 A więc tak Flagę /MT mam włączoną, podczas kompilacji, co do projektu chodzi tutaj o plik *.sln?
Edit a dobra już wiem o który plik chodzi o *.vcproj, Mam podesłać jego zawartość Tak ? |
|
maly |
» 2015-01-13 20:19:32 Źle zrozumiałem z tymi 100-ma plikami, miałem na myśli pliki źródłowe cryptlib-a którego możesz sobie skompilować w swoim visualu. |
|
troian Temat założony przez niniejszego użytkownika |
» 2015-01-13 20:23:21 Może dokładniej opiszę sama aplikacja *.exe składa się z około 130 plików przy tym inicjuje inne lib / include takie jak python 7zip itp, i w katalogu include znajduje się też cryptopp on ma około 136 plików cpp i h
Może zadam prościej pytanie, czy mam podesłać te pliki z katalogu cryptopp które sprawiają mi problemy i ktoś kto więcej wie lukną by na nie i wytłumaczył mi przyczynę ów błędu?
Żeby nie było nie proszę o gotowe poprawienie kodu tylko o wskazanie przyczyny ów błedu. |
|
« 1 » 2 |