음...=_=;;;
해골책... 예제는 따라쳐도 LINK Error....
해결법은 책에 안나오고.... 하라는말도 없고....
error LNK2019: _Direct3DCreate9@4 외부 기호(참조 위치: "long __cdecl InitD3D(struct HWND__ *)" (?InitD3D@@YAJPAUHWND__@@@Z) 함수)에서 확인하지 못했습니다.
error LNK2019: _D3DXMatrixPerspectiveFovLH@20 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
error LNK2019: _D3DXMatrixLookAtLH@16 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
error LNK2019: _D3DXMatrixRotationY@8 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
error LNK2019: __imp__timeGetTime@0 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
Tutorial 3번 Matrices을 컴파일 하다보면 위와같은 Error를 만나게 된다....
일단
error LNK2019: _Direct3DCreate9@4 외부 기호(참조 위치: "long __cdecl InitD3D(struct HWND__ *)" (?InitD3D@@YAJPAUHWND__@@@Z) 함수)에서 확인하지 못했습니다.
위 애러는...
지난 게시글인
[Direct3D] DivecCreate LNK2019, LNK1120, C2440, C2664 Error 해결법
을 확인하면 알수있듯..
"속성->구성속성->링커->입력->추가 종속성"에 d3d9.lib를 추가해주면 된다.
그 다음 애러인
error LNK2019: _D3DXMatrixPerspectiveFovLH@20 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
error LNK2019: _D3DXMatrixLookAtLH@16 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
error LNK2019: _D3DXMatrixRotationY@8 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
위 3가지 LINK Error는 이번 Tutorial 에서 d3d9.h가 아닌 d3dx9.h을 이용하면서 발생...
편집창을 확인하면
#include <d3dx9.h>와 D3DX~부분이 빨간 밑줄 표시 되어있을것이다...
(아니라면 아래 단계중 포함디렉터리 부분은 패스해도 상관없을것으로 예상...)
해결 방법은 위 그림과 같이
"속성->구성속성->VC++ 디렉터리" 에서
포함디렉터리에 $(DXSDK_DIR)Include
참조디렉터리에 $(DXSDK_DIR)Lib\x86 또는 $(DXSDK_DIR)Lib\x64 (운영체제가 32bit이면 x86, 64bit이면 x64)
를 추가하고
"속성->구성속성->링커->입력->추가 종속성"에 d3dx9.lib를 추가해주면 된다.
마지막으로
error LNK2019: __imp__timeGetTime@0 외부 기호(참조 위치: "void __cdecl SetupMatrices(void)" (?SetupMatrices@@YAXXZ) 함수)에서 확인하지 못했습니다.
이 애러는 TimeGetTime함수를 사용하기 위해서 포함한 mmsystem.h 때문에 생긴 애러로...
"속성->구성속성->링커->입력->추가 종속성"에 winmm.lib를 추가해주면 된다.
'Dev/Info > Direct3D' 카테고리의 다른 글
[Direct3D] DivecCreate LNK2019, LNK1120, C2440, C2664 Error 해결법 (0) | 2012.05.28 |
---|