자꾸 편하게 쓸 수 있는 포스트를 찾아쓰다 보니 또 warning을 해결하고 글을 씁니다.
오류는 다음과 같습니다.
warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
대충 LIBCMT라는 친구가 다른 lib의 사용과 충돌한다는 것 같습니다.
제가 해결한 방법입니다.
https://stackoverflow.com/questions/3007312/resolving-lnk4098-defaultlib-msvcrt-conflicts-with
Resolving LNK4098: defaultlib 'MSVCRT' conflicts with
This warning: LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library is a fairly common warning in Visual Studio. I'd like to understand the exact
stackoverflow.com
대충 4가지 버전의 CRT link library가 있는데 프로젝트 안의 런타임 라이브러리가 서로 달라서 충돌한다는 이야기같습니다.
솔루션 내의 프로젝트 각각에 대해서 Runtime Library를 확인해줍니다.
Project -> Properties -> C/C++ -> Code Generation -> Runtime Library
프로젝트 -> 속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리
에서
이 부분을 확인하고 다른 부분이 있는지 확인해줍니다.
저의 경우는
Debug 시에는 /MTd,
Release시에는 /MT로 되어 있어야 하는데
둘다 /MT로 설정되어 있어서 Debug를 /MTd로 바꿔주었습니다.
All Configuration으로 해놓고 설정하다가 저 부분도 같이 바꿔버린 것 같습니다.
주의해야겠네요.
'잡동사니' 카테고리의 다른 글
프로그래머스 LV.1 클리어 (1) | 2023.12.17 |
---|---|
Microsoft Visual C++ Runtime Library 런타임 에러 (0) | 2023.11.30 |
warning C4819 해결하기 (2) | 2023.10.03 |
vcpkg 패키지 버전 업데이트 하기 (0) | 2023.09.29 |
Visual Studio 디버그 모드에서만 콘솔창이 바로 닫히는 경우 (0) | 2023.09.11 |