构建演示时链接器错误

时间:2014-05-20 13:14:02

标签: visual-c++ visual-studio-2012 directx-11

我最近购买了“使用DirectX11进行3D游戏编程”一书。我想尝试从CD中获取样本,为此我遵循了this和许多其他支持论坛查询,但出于某种原因,它给了我以下链接器错误。

    1>------ Rebuild All started: Project: Box, Configuration: Debug Win32 ------
1> fxc compile for debug: C:\Users\HashTable\Documents\Visual Studio 2012\Projects\D3DSamples\Chapter 6 Drawing in Direct3D\Box\FX\color.fx
1> Microsoft (R) Direct3D Shader Compiler 9.29.952.3111
1> Copyright (C) Microsoft Corporation 2002-2009. All rights reserved.
1>
1> compilation succeeded; see color.cod
1> compilation succeeded; see C:\Users\HashTable\Documents\Visual Studio 2012\Projects\D3DSamples\Chapter 6 Drawing in Direct3D\Box\FX\color.fxo
1> BoxDemo.cpp
1> MathHelper.cpp
1> GeometryGenerator.cpp
1> GameTimer.cpp
1> d3dUtil.cpp
1> d3dApp.cpp
1> Generating Code...
1>Effects11d.lib(EffectAPI.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(EffectNonRuntime.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(EffectLoad.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(EffectReflection.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(d3dx11dbg.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(d3dxGlobal.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>Effects11d.lib(EffectRuntime.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1700' in d3dApp.obj
1>C:\Users\HashTable\Documents\Visual Studio 2012\Projects\D3DSamples\Chapter 6 Drawing in Direct3D\Box\Debug\Box.exe : fatal error LNK1319: 7 mismatches detected
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

我已经尝试在从MSDN codeplex和DirectX SDK 2010获得的代码中构建VS 2012 for Effects库中的Rel和Debug构建。我已将它们移动到指定位置但仍然显示这些错误。 任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

D3DX图书馆is deprecated

但是我觉得书上有一个副本,所以试着把它从那里链接起来。如果我没记错的话,请查看Common文件夹。

不过,它已被弃用......

答案 1 :(得分:0)

如果您在重建效果库后仍然看到这些错误,则可能会针对不同的平台。确保两个项目中的平台工具集相同:

prop