error LNK2019 발생시 확인 사항.
회사 업므로 MFC를 사용하면서 이런 저런 에러 때문에 골머리를 썩고 있다.
그 중 하나의 에러가 LNK2019....
[원인]
다른 Class에 있는 함수를 참조하려고 시도 하였으나, 해당 Class에 함수의 선언만 있고 구현이 없을 때 발생.
error LNK2019가 발생 되었을 때 확인해야 할 사항을 간단하게 정리해 본다.
1. Project Properties > Configuration Properties > Linker > Input > Additional Dependencies 확인.
Additional Dependencies에 사용할 lib File 추가해야 한다.
아니면 전처리기 코드를 직접 입력해도 된다.
#pragma comment(lib, "iphlpapi.lib")
2. 프로젝트에 헤더 파일과 구현 파일이 추가 되어있는지 확인.
Source에서 헤더 파일을 Include 하였으나 Project에 헤더 파일을 참조하지 않았을 경우 발생.
3. Project Properties > Configuration Properties > VC++ Directories > Library Directories 확인.
가장 삽질한 부분이다~_~
1, 2번을 모두 확인해서 이상이 없었는데 계속 에러가 발생되어서 확인을 했더니만 Library Directories 설정이 잘못 되어 있었다.
외부 lib file을 사용을 했기 때문에 library directory를 참조 시킨다고 해당 directory를 추가했더니 에러가 발생..ㅡㅡ;;;
뭐가 잘못했는지는 아직도 모르겠지만.... Visual Studio 기본 값으로 설정을 변경 후 Compile을 진행하니 에러가 사라짐.
lib file이 있는 곳을 참조했는데 왜 에러가 나는 건지 참...
가뭄에 콩나듯 윈도우 C# Project를 진행했지만 이번에는 MFC로 진행하니 아주 환장할 것 같다~_~