我安装了DirectX SDK June 10
,但是当我包含 时d3dx9.h
,编译器找不到它。
我检查了 SDK 目录,也没有找到。
文件丢失:d3dx9.lib
, d3dx9.h
, dxfile.h
.
DirectX SDK 安装将添加一个系统环境变量,该变量DXSDK_DIR
保存 SDK 安装位置的路径。我建议不要在包含和库目录中插入绝对路径,而是使用此变量来设置 DX 依赖项的包含和库路径。
作为包含目录添加:$(DXSDK_DIR)Include
作为库目录添加:$(DXSDK_DIR)Lib\x86
或$(DXSDK_DIR)Lib\x64
在 64 位架构上
解析到您安装 SDK的$(DXSDK_DIR)
路径,通常是“C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)”,即使您选择了其他路径也可以工作,这使得它在不同的人之间更可用。
库文件 (d3dx9.lib) 应位于 C:\path\to\Microsoft DirectX SDK (2010 年 6 月)\Lib\x86\ 以及 C:\path\to\Microsoft DirectX SDK (2010 年 6 月)\Lib 中\x64\
您提到的两个包含文件都存在于 C:\path\to\Microsoft DirectX SDK (June 2010)\Include\
如果您仍然无法找到它们,请从此处下载并安装 SDK:http: //www.microsoft.com/en-us/download/details.aspx?id=6812
我下载并使用了这个,我可以向你保证,这些文件是存在的!!
当我遇到这个问题时,我发现我在
[Program Files(x86) \ Microsoft DirectX SDK (June 2010) \ include] 文件夹中有 d3dx9.h。
编译器需要它位于
[Program Files(x86) \ Windows Kits \ 8.1 \ include \ shared] 中。
我将文件复制到另一个位置并且它工作,但我想知道这是否是最聪明的修复。
就我而言,以下代码适用于我:
//#include <d3dx9.h>
#include <d3d9.h>
//#pragma comment(lib, "d3dx9.lib")
#pragma comment(lib, "d3d9.lib")