d3dx11.lib nicht gefunden?
Bin ich mit Windows 8 /Visual Studio 2012, C++11 und Direct3D-11 für die Entwicklung.
Habe ich auch 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")
Aber der linker kann nicht scheinen zu finden, die d3dx11.lib. Nach dem hinzufügen der Pfad, wo sich die Bibliothek befindet sich an den 'Verzeichnissen' des Projektes, der linker immer noch nicht finden können, die Dateien. Auch nachdem ich kopiert die lib-Dateien in das Projekt-Verzeichnis selbst, es funktioniert nicht.
Ich installierte die Windows 8-SDK sowie das DirectX-SDK vom Juni 2010. Bin ich etwas fehlt?
- Sind Sie sicher, dass die "D3DX11" lib-Datei enthalten ist, mit denen Sie kopieren? Ich nehme an, Sie können den link, aber die D3DX utility library wird nicht mehr unterstützt - in der Tat, die Sie nicht benötigen zum download der 2010 SDK überhaupt. D3DX wurde ersetzt durch den DirectXMath Bibliothek (XMMath). Die Konvertierung ist ein bisschen Schmerz, aber nicht schlimm.
- Ok. Nicht wusste dass. Ich bin ziemlich neu auf D3D11. Ich werde sehen, wie es zu tun, ohne diese lib.
- Manchmal D3DX ist der Weg zu gehen (ich benutze keine DirectXMath, weil es erschwert interop mit CUDA). Auch einige Schnittstellen für DirectXMath sind schlecht für die Portierung (z.B. Initialisierung). Hast du eine Lösung finden? (Ein Weg von kleben mit Windows SDK und ordentlich Zugriff auf D3DX?)
- Sie haben, um link D3DX, wenn Sie möchten windows 7 zu arbeiten
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beim Umgang mit diesem mich, ich hier angefangen habe:
Wo ist das DirectX-SDK?
dann - in etwa in der Mitte der Seite, das Lesen über DirectXMath:
DirectXMath
Es ist ziemlich viel gerade, einschließlich der richtigen header-Dateien und das ändern von "D3DX" Präfixe "XM". Nicht ganz so einfach, aber das ist die Allgemeine Idee.
Ihrem ersten Programm wahrscheinlich haben Einschlüsse/aufzuhalten der Benutzung wie diese:
Natürlich, es nicht als die beste Praxis, um das "using namespace", aber in diesem einen Beispiel habe ich gefunden, dass "DirectX::" auf jede Zeile, die mein Programm mein Programm fast unmöglich (für mich) zu Lesen - also ging ich mit "verwenden".
Glück!
Wahrscheinlich Sie enthalten schlechte Pfad in Eigenschaften, Statt "*DirectxSDK/Lib/x86", Sie enthalten ""*DirectxSDK/Lib".
Ich lief in dieses Problem, wie auch mit VS2010, aber ich habe gerade die Lösung gefunden. Sie müssen die Anbieter der Linker die Bibliothek-Datei, die Sie Probleme mit.
Projekt->Eigenschaften->Konfiguration-Eigenschaften->Linker->Zusätzliche Bibliothek-Verzeichnisse
Dann fügen Sie die Bibliothek-Datei, die Sie wollen, in es. Arbeitete für mich, hoffentlich klappt auch bei Euch, und dann werden Sie nicht zu verwirren haben mit DirectXMath und die Suche nach neuen tutorials für Sie.