Ich verwende Windows 8/Visual Studio 2012, C++ 11 und Direct3D 11 für die Entwicklung.d3dx11.lib nicht gefunden?
I gehören die Direct3D-Bibliotheken wie diese
#pragma comment(lib, "dxgi.lib")
#pragma comment(lib, "d3d11.lib")
#pragma comment(lib, "d3dx11.lib") // <-- error LNK1104: cannot open file 'd3dx11.lib'
#pragma comment(lib, "d3dx10.lib")
Jedoch kann der Linker die d3dx11.lib zu finden scheinen. Nach dem Hinzufügen des Pfads, in dem sich die Bibliothek befindet, zu den 'Bibliotheksverzeichnissen' des Projekts, kann der Linker diese Dateien immer noch nicht finden. Auch nachdem ich die lib-Dateien in das Projektverzeichnis selbst kopiert habe, funktioniert es nicht.
Ich habe das Windows 8 SDK sowie das DirectX SDK von Juni 2010 installiert. Fehle ich irgendetwas?
Sind Sie sicher, dass die lib-Datei "D3DX11" mit den kopierten Dateien enthalten ist? Ich nehme an, Sie können es verknüpfen, aber die D3DX-Dienstprogramm-Bibliothek wird nicht mehr unterstützt - in der Tat müssen Sie das 2010 SDK überhaupt nicht herunterladen. D3DX wurde durch die DirectXMath-Bibliothek (XMMath) ersetzt. Die Umstellung ist ein bisschen Schmerz, aber nicht so schlimm. –
Ok. Wusste das nicht. Ich bin ziemlich neu in D3D11. Ich werde sehen, wie es ohne diese Lib geht. – bytecode77
Manchmal D3DX ist der Weg zu gehen (ich verwende nicht DirectXMath, weil es Interop mit CUDA erschwert). Außerdem sind einige Schnittstellen für DirectXMath schlecht für die Portierung (z. B. Initialisierung). Hast du eine Lösung gefunden? (Eine Möglichkeit, mit Windows SDK zu bleiben und ordentlich auf D3DX zuzugreifen?) – axon