我正在尝试从最新的稳定版本 (2.0.0) 编译 SDL2。由于缺少 DirectX header ,特别是 dxsdkver.h
,因此在 Visual Studio 2012 中的 Windows 8 上构建失败。我知道 Microsoft 在 Windows 8 中将 DirectX 和 Windows SDK 合并在一起,但我无法在 Windows 8 或 Windows 8.1 SDK 中的任何位置找到此 header 。但是,我可以在 2010 年 6 月的旧版 DirectX SDK 中找到它。
是否有此 header 的替代品或是否已在新的 Windows 8 SDK 中移动/重命名?还是我应该继续针对旧的 DirectX SDK 进行构建?
最佳答案
dxsdkver 头文件唯一做的就是为已安装的 DXSDK 版本#define 一些宏。如果 SDL2 需要此 header ,则看起来它可能对不同版本有一些编译时依赖性。事实上,从代码中看一些片段,一个例子是如果您的 SDK 比特定版本旧,SDL 编译时没有 XAUDIO2 支持。在更新 SDL2 以针对 Windows SDK 之前,您最安全的选择是针对最新的 DirectX SDK(2010 年 6 月)构建它。
关于winapi - 从 8 和 8.1 开始,Windows SDK 中是否缺少 'dxsdkver.h' 头文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19529714/