Unresolved external DirectX – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Unresolved external DirectX – C / C++ – Fórum – Programujte.comUnresolved external DirectX – C / C++ – Fórum – Programujte.com

 

Porcepoque0
Newbie
23. 12. 2012   #1
-
0
-

Zdravim, použil jsem tento tutorial: http://www.directxtutorial.com/Lesson.aspx?lessonid=11-4-3
Zkopíroval jsem si ten main.cpp.
I když jsem do kódu doplnil to, co vyžaduje VS2012, jako je  

#include "stdafx.h"
#include "jménoprojektu.h"

hlásí mi to:

Error 1 error LNK2019: unresolved external symbol _D3D11CreateDeviceAndSwapChain@48 referenced in function "void __cdecl InitD3D(struct HWND__ *)" (?InitD3D@@YAXPAUHWND__@@@Z) C:\Users\ADMIN\Documents\Visual Studio 2012\Projects\DX11\DX11\DX11.obj DX11

Prosím, napište o co jde. Jinde na netu jsem pomoc nenašel.

Nahlásit jako SPAM
IP: 88.102.98.–
KIIV
~ Moderátor
+43
God of flame
23. 12. 2012   #2
-
0
-

pomoci include se vklada do zdrojaku popis funkci, datovejch struktur a tak... neni tam ale vzasade nikdy implementace (krom sablon)  ... implementace se pak musi prilinkovat (bud libka.o nebo libka.a (ci kdo vi jaky pripony)) a to se dela v nastaveni projektu (ale pracuju v zasade s GCC takze si to musis najit v navodu k dx libky)

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Radek Chalupa
~ Redaktor
+1
Super člen
23. 12. 2012   #3
-
0
-

#1 Porcepoque
Musíš do projektu pro linker přidat příslušnou lib knihovnu. Pro tu zmíměnou funkci konkrétně d3d11.lib. můžeš to napast přímo do zdrojáku (nejlépe do stdafx.h) takhle:

#pragma comment (lib, "d3d11.lib")

Radek Chalupa
- vývoj software na zakázku
- školení programování (C/C++, WinAPI, ATL, COM, ActiveX, C#, NET Framework, MFC)
http://www.radekchalupa.cz

Nahlásit jako SPAM
IP: 213.220.211.–
Porcepoque0
Newbie
23. 12. 2012   #4
-
0
-

Mám tam ,,nacommentovaný" tyto knihovny:

d3d11.lib
d3d11x.lib
d3d10x.lib
d3d10.lib

a includovaný toto:

stdafx.h
windows.h
windowsx.h
d3d11.h
d3d11x.h
d3d10.h
d3d10x.h
DX11.h     (DX11 je jméno projektu)

a pořád si to stěžuje. Přesněji řečeno, ty unresolved external problémy vyvolává funkce InitD3D.

Nahlásit jako SPAM
IP: 88.102.98.–
Radek Chalupa
~ Redaktor
+1
Super člen
23. 12. 2012   #5
-
0
-

#4 Porcepoque
V dokumentaci by u té funkce mělo být uvedené jaký header a libku potřebuje, je to zřejmě nová funkce z DX11, nemám tady VS2012, ale ty bys ji měl mít v dokumentaci, popř. googlit....spíš to ale podle té hlášky vypadalo na tuhle funkci http://msdn.microsoft.com/en-us/library/windows/desktop/ff476083(v=vs.85).aspx

Radek Chalupa
- vývoj software na zakázku
- školení programování (C/C++, WinAPI, ATL, COM, ActiveX, C#, NET Framework, MFC)
http://www.radekchalupa.cz

Nahlásit jako SPAM
IP: 213.220.211.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 15 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý