Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
masterxilo Mini JLI'ler
Anmeldedatum: 06.04.2008 Beiträge: 2
Medaillen: Keine
|
Verfasst am: 06.04.2008, 21:26 Titel: Alle Examples ab kap 19: nicht Kompilierbar |
|
|
Ich kann keines der examples ab Kapitel 19 und mehr compilieren.
Ich bekomme immer (ungefähr):
Code: | 1>------ Erstellen gestartet: Projekt: D3DDrawText, Konfiguration: Release Win32 ------
1>Verknüpfen...
1>LINK : warning LNK4075: /INCREMENTAL wird aufgrund der Angabe von /OPT:ICF ignoriert.
1>D3DDrawText.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_Direct3DCreate9@4" in Funktion ""int __cdecl InitDirect3D(struct HWND__ *)" (?InitDirect3D@@YAHPAUHWND__@@@Z)".
1>D3DDrawText.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_D3DXCreateFontIndirectA@12" in Funktion ""void __cdecl CreateD3DFont(void)" (?CreateD3DFont@@YAXXZ)".
1>Release\D3DDrawText.exe : fatal error LNK1120: 2 nicht aufgelöste externe Verweise.
1>Das Buildprotokoll wurde unter "file://c:\Users\Admin\Documents\C++\Jetzt lerne ich Spieleprogrammierung mit DirectX\Kapitel 19\D3DDrawText\Release\BuildLog.htm" gespeichert.
1>D3DDrawText - 3 Fehler, 1 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ========== |
Ich habe aber (glaube ich) alle include und lib verzeichnisse richtig angegeben, weil ich kann sogar die DX samples kompilieren kann. Ich benutze Microsoft Visual Studio 2008 Express Edition und Microsoft DirectX 9.0 SDK (Summer 2004).
Was mach ich falsch? (ich denke nicht, dass es irgendetwas mit der DXSDK version zu tun hat)
Ah, und ausserdem:
If I go to Project properties->Linker->Input->Additional dependencies and add: "C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib"
The linker says:
+ Code Snippet
1>LINK : fatal error LNK1181: Eingabedatei "C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib.obj" kann nicht geöffnet werden. (could not open...). |
|
Nach oben |
|
|
Chriss Senior JLI'ler
Anmeldedatum: 18.08.2004 Beiträge: 267
Medaillen: Keine
|
Verfasst am: 06.04.2008, 22:31 Titel: |
|
|
Neben den Verzeichnissen der Libs musst du natürlich auch die Libs selbst einbinden. Welche steht im Buch.
Grüße |
|
Nach oben |
|
|
masterxilo Mini JLI'ler
Anmeldedatum: 06.04.2008 Beiträge: 2
Medaillen: Keine
|
Verfasst am: 06.04.2008, 22:36 Titel: |
|
|
Ja?
Wo stehen die. Meinst du das nützt was?
Weil wenn ich
If I go to Project properties->Linker->Input->Additional dependencies and add: "C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib"
Dann:
The linker says:
+ Code Snippet
1>LINK : fatal error LNK1181: Eingabedatei "C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib.obj" kann nicht geöffnet werden. (could not open...).
Beschwert es sich nicht mehr über die libs |
|
Nach oben |
|
|
Chriss Senior JLI'ler
Anmeldedatum: 18.08.2004 Beiträge: 267
Medaillen: Keine
|
Verfasst am: 07.04.2008, 08:13 Titel: |
|
|
Was du brauchst hängt davon ab was du benutzen willst!
Einbinden kannst du sie über die Projekteigenschaften oder direkt im Code
CPP: | #pragma comment (lib, "dateiname.lib)
|
Diese hier brauchst du bestimmt:
CPP: | #pragma comment(lib, 'dxguid.lib')
#pragma comment(lib, 'd3d9.lib')
#pragma comment(lib, 'd3dx9.lib')
|
|
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 07.04.2008, 13:06 Titel: |
|
|
Zitat: | If I go to Project properties->Linker->Input->Additional dependencies and add: "C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib |
This is because "Additional dependencies" does not want paths but libraries (e.g. dxguid.lib, d3d9.lib, d3dx9.lib).
Die Verzeichnisse werden einen Eintrag darüber (wenn das bei VS 2008 noch so ist) angegeben, nämlich bei Linker->Allgemein->Zusätzliche Bibliotheksverzeichnisse. |
|
Nach oben |
|
|
|