Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[VC++2010 Express]Jak dodać bibliotekę do linkera

Ostatnio zmodyfikowano 2011-11-02 14:14
Autor Wiadomość
skovv
Temat założony przez niniejszego użytkownika
[VC++2010 Express]Jak dodać bibliotekę do linkera
» 2011-11-02 09:49:44
Witam. Mam pewien problem z winapi, poszukałem i znalazłem rozwiązanie( http://forum.warsztat.gd/index.php?topic=17757.0 ), niestety nie wiem jak w VC++ dodać bibliotekę do linkera -.- Jeśli ktoś może powiedzieć to będę wdzięczny :]
P-43225
SeaMonster131
» 2011-11-02 11:13:48
P-43226
Drraven
» 2011-11-02 12:00:36
Angielski się kłania i tyle :D
P-43227
skovv
Temat założony przez niniejszego użytkownika
» 2011-11-02 12:16:31
Znalazłem to w opcjach, dodałem i z winapi już chyba problemów nie ma, ale dalej mam błędy:

------ Build started: Project: FastCode, Configuration: Debug Win32 ------
main.obj : error LNK2028: unresolved token (0A00015A) "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixRotationY(struct D3DXMATRIX *,float)" (?D3DXMatrixRotationY@@$$J18YGPAUD3DXMATRIX@@PAU1@M@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2028: unresolved token (0A00016C) "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixPerspectiveFovLH(struct D3DXMATRIX *,float,float,float,float)" (?D3DXMatrixPerspectiveFovLH@@$$J220YGPAUD3DXMATRIX@@PAU1@MMMM@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2028: unresolved token (0A000175) "extern "C" struct IDirect3D9 * __stdcall Direct3DCreate9(unsigned int)" (?Direct3DCreate9@@$$J14YGPAUIDirect3D9@@I@Z) referenced in function "public: void __thiscall WINDOW::Create(char *,struct POSITION)" (?Create@WINDOW@@$$FQAEXPADUPOSITION@@@Z)
main.obj : error LNK2028: unresolved token (0A0001BD) "extern "C" unsigned long __stdcall timeGetTime(void)" (?timeGetTime@@$$J10YGKXZ) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2028: unresolved token (0A0001F2) "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixLookAtLH(struct D3DXMATRIX *,struct D3DXVECTOR3 const *,struct D3DXVECTOR3 const *,struct D3DXVECTOR3 const *)" (?D3DXMatrixLookAtLH@@$$J216YGPAUD3DXMATRIX@@PAU1@PBUD3DXVECTOR3@@11@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2019: unresolved external symbol "extern "C" struct IDirect3D9 * __stdcall Direct3DCreate9(unsigned int)" (?Direct3DCreate9@@$$J14YGPAUIDirect3D9@@I@Z) referenced in function "public: void __thiscall WINDOW::Create(char *,struct POSITION)" (?Create@WINDOW@@$$FQAEXPADUPOSITION@@@Z)
main.obj : error LNK2019: unresolved external symbol "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixPerspectiveFovLH(struct D3DXMATRIX *,float,float,float,float)" (?D3DXMatrixPerspectiveFovLH@@$$J220YGPAUD3DXMATRIX@@PAU1@MMMM@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2019: unresolved external symbol "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixLookAtLH(struct D3DXMATRIX *,struct D3DXVECTOR3 const *,struct D3DXVECTOR3 const *,struct D3DXVECTOR3 const *)" (?D3DXMatrixLookAtLH@@$$J216YGPAUD3DXMATRIX@@PAU1@PBUD3DXVECTOR3@@11@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2019: unresolved external symbol "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixRotationY(struct D3DXMATRIX *,float)" (?D3DXMatrixRotationY@@$$J18YGPAUD3DXMATRIX@@PAU1@M@Z) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
main.obj : error LNK2019: unresolved external symbol "extern "C" unsigned long __stdcall timeGetTime(void)" (?timeGetTime@@$$J10YGKXZ) referenced in function "public: void __thiscall SCENE::Update(class WINDOW)" (?Update@SCENE@@$$FQAEXVWINDOW@@@Z)
C:\Documents and Settings\Skovv\Pulpit\FastCode\Debug\FastCode.exe : fatal error LNK1120: 10 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Od czego to się bierze? -.-
Biblioteki których używam:

#include <windows.h>
#include <mmsystem.h>
#include <cstdio>
#include <vector>
#include <stdlib.h>
#include <d3dx9.h>
#pragma warning( disable : 4996 )
#include <strsafe.h>
#pragma warning( default : 4996 )
P-43228
DejaVu
» 2011-11-02 12:26:35
Wpisywałeś fragmenty błędów w googlach? Pytałeś się jak dodać bibliotekę do linkera. Dostałeś odpowiedź. Teraz się pytasz 'dlaczego' dostajesz błędy linkera, a powód sam określiłeś w pierwszym poście czyli nie dodałeś wpisów do linkera.
P-43229
skovv
Temat założony przez niniejszego użytkownika
» 2011-11-02 13:27:27
W opcjach projektu: Configuration Proporties->Linker->Input->Additional Dependencies->Edit dałem user32.lib. To chyba załatwiło sprawę z winapi, jednak mam nowe błędy z d3d. Do d3d dałem ścieżki include i lib, vc++ nie czepia się o funkcje tylko daje powyższe błędy :|

EDIT:
Wywaliłem wszystkie funkcje d3d i winapi działa poprawnie, więc jeden problem z głowy :]
P-43231
skovv
Temat założony przez niniejszego użytkownika
» 2011-11-02 13:50:29
Troche szukania i problem rozwiązany :] Trzeba było dolinkować(ręcznie) jeszcze D3D9.LIB
P-43232
skovv
Temat założony przez niniejszego użytkownika
» 2011-11-02 14:12:54
Mam jeszcze jeden problem: Gdziekolwiek mam w funkcji jakiś tekst( np ścieżka do pliku ) to VC++ krzyczy:

MessageBox(NULL, "Could not find texture map", "err", MB_OK);
main.cpp(169): error C2664: 'MessageBox' : cannot convert parameter 2 from 'const char [27]' to 'LPCTSTR'
w takiej sytuacji robię coś takiego:

MessageBox(NULL, (LPCTSTR)"Could not find texture map", (LPCTSTR)"err", MB_OK);
I błędy znikają, kompiluje się ale tekst nie jest normalny( taki jak zapisałem, np: "Could not find texture map" ) tylko zamienia się w kwadraty
P-43233
« 1 » 2
  Strona 1 z 2 Następna strona