2011. 11. 21. 11:48 윈도우/참고
* error LNK2019 링크 오류가 났을때 체크 사항

ex)
1>CxImageD.lib(ximapng.obj) : error LNK2019: _png_read_end 외부 기호(참조 위치: "public: bool __thiscall CxImagePNG::Decode(class CxFile *)" (?Decode@CxImagePNG@@QAE_NPAVCxFile@@@Z) 함수)에서 확인하지 못했습니다.

1) 추가 종속성에 LIB 링크 했는지 확인

속성페이지에서 추가 종속성에 lib 파일을 링크 했는지 확인 한다.
또는 아래와 같이 직접 소스에 링크 하는 방법도 있다.

#ifdef _DEBUG
#pragma comment(lib, "CxImageD.lib")
#else
#pragma comment(lib, "CxImage.lib")
#endif


* 각 라리브러리가 프로젝트로 되어 있다면 추가 종속성에 추가 할 필요 없고 프로젝트 종속성을 맞춰 주면 자동으로 링크 된다. 이런 경우에도 가끔 LNK2019 오류가 발생 한다.

2) 프로젝트에 헤더 파일(~.h)과 구현 파일(~.cpp)을 추가 했는지 확인

3) 함수 선언 하고 구현 하지 않았는지 확인

*4) inline 이나 template 을 사용할 경우 헤더와 구현을 다른 파일로 분리 하였는지 확인
    - 분리하지 말고 하나의 파일로 구현 한다. 
    - 실제 오류는 다른 파일에 있다.

5) c 또는  cpp 처럼 확장자가 다른지 확인
    - 확장자를 하나로 통일 시킨다.


참고 : http://sadiles.blog.me/10072075057

'윈도우 > 참고' 카테고리의 다른 글

리버스 엔지니어링 예제  (0) 2011.11.23
Visual Studio C++ 2010 단축키  (0) 2011.11.23
Visual Studio C++ 2008 단축키  (0) 2011.11.23
Visual Studio C++ 2005 단축키  (0) 2011.11.23
The connection with the server was reset  (0) 2011.11.18
posted by townone