好吧,我正在學習DirectX 11,並試用了Frank D Luna的Direct3D簡介中的BoxDemo代碼。但我得到以下鏈接錯誤:DirectX 11 Effects11.lib Effects11d.lib鏈接器錯誤
Effects11.lib(EffectAPI.obj):錯誤LNK2001:解析外部符號D3DCompileFromFile
我聽說我必須建立在Effects11.lib釋放調試模式。我也有點吮吸。我所做的是去Samples \ C++ \ Effects11 \文件夾。在VS2012中打開了解決方案,並在Release和Debug模式下構建了Effects11.lib。重命名調試一個Effects11d.lib。將兩個庫放在項目文件夾中,並將它們添加到鏈接器 - >輸入 - >附加依賴項中。我的目標平臺是x64,我的include目錄同樣指向directx include和lib目錄。
那麼我的問題是什麼?爲什麼編譯器無法找到Effects11.lib?我做對了嗎?請幫幫我 。 在此先感謝
編輯:所以我的問題在於可能與d3dcompiler.lib。但我已經在鏈接器 - >輸入中添加了d3dcompiler.lib。但是當構建Effects11.lib時,我還必須添加d3dcompiler.lib嗎?
什麼是您的「額外的庫目錄」設置爲:「$(DXSDK_DIR)\ Lib \ x86」或「$(DXSDK_DIR)\ Lib \ x64」?如果它是前者,並且您的目標是x64,那麼您將鏈接到錯誤的庫。 – Proxy