본문 바로가기

Development

[C++ compile] 기존에 LIB 를 직업 추가해서 에러가 발생해서요


기존에 LIB 를 직업 추가해서 에러가 발생해서요

GLANG 소스코드를 메인 프로그램에 모두 넣어서. 컴파일을 해놓았는데두

msvcprtd.lib(MSVCP71D.dll) : error LNK2005: "public: unsigned int __thiscall std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >::max_size(void)const " (?max_size@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QBEIXZ)이(가) laid_diagnosis.obj에 이미 정의되어 있습니다.

이런식으로 몇개가 나오는데요 어떻게 해야하나용~~~~~~

LIB파일로 첨부하셨나보군요. 저도 이런 에러 겪었는데 인터넷 찾아보시면 해결책 나와요. 원래 있던 GLAN project 의 속성 설정에서 C/C++의 Code Generation 에서 Runtime Library를 원래 있던 Multi-threaded Debug (/MTd) 에서 Multi-threaded Debug DLL (/MDd) 로 바꾸신 다음 컴파일하셔서 거기 있던 lib를 질문자님의 작업프로젝트에 첨부하시면 됩니다. 당연히 질문자님의 프로젝트는 Multi-threaded Debug DLL (/MDd) 로 설정되어 있겠죠~