由于 Direct X 版本不正确导致的编译错误

Posted

技术标签:

【中文标题】由于 Direct X 版本不正确导致的编译错误【英文标题】:Compilation Error due to InCorrect Direct X Version 【发布时间】:2011-10-12 05:13:53 【问题描述】:

我获得了用于从摄像机捕获视频的示例项目。我正在尝试编译它。 我正在使用 Windows 7 和 vs 2008。

我得到以下编译错误。

1>----- 构建开始:项目:VidCap,配置:调试 Unicode Win32 ------ 1>编译... 1>cl:命令行警告 D9035:选项“Wp64”已被弃用,将在未来版本中删除 1>VidCap.cpp

1>c:\vikram\0.3.0.810\sdk\windows\x86\webcamsdk\samples\windows\libwebcamsrc\stream.h(20):致命错误 C1083:无法打开包含文件:'streams.h':没有这样的文件或目录

1>项目:警告 PRJ0018:未找到以下环境变量: 1>$(COMMONLIB)

其他包含目录: ....\Include;"$(COMMONLIB)\DX9SDK_updated\Classes";"$(COMMONLIB)\DX9SDK_updated\include"

我的假设是由于 DirectX Sdk 所以我从 msdn 下载了 dxsdk_oct2005。

但安装后我在系统中看不到这些路径。

我在这里错过了什么吗?我应该在我的系统中安装哪个 Direct X 版本。

【问题讨论】:

【参考方案1】:

您错过了 DirectShow 头文件。 尝试添加路径

%Platform SDK Root%\Samples\Multimedia\DirectShow\BaseClasses

到您的附加包含目录

原因是 DirectShow 不是 DirextX 的一部分,而是 Plantform SDK。

【讨论】:

【参考方案2】:

问题已解决这里需要直接X9版本,其中包含stream.h

【讨论】:

以上是关于由于 Direct X 版本不正确导致的编译错误的主要内容,如果未能解决你的问题,请参考以下文章

由于不同版本的 MSVC 和 Qt 库导致链接错误

编译 autoconf 导致版本报告不正确

由于未定义的行为或编译器错误导致 C++ 代码崩溃?

Mac OS X 上的 GLSL 版本 130 导致错误 [关闭]

由于 Centos6 上的 GMP 软件包版本导致的 Ansible 错误

Sass 中文注释导致编译错误