» »

[C++] github projekt

[C++] github projekt

trenerkar ::

Na githubu sem našel zanimiv projekt:
https://github.com/HackerPoet/Particle-...

Rad bi ga prevedel, pa mi tega zaenkrat še ni uspelo v visual studio 2017. Linker mi zajamra (samo del napak):
Main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class sf::Time __thiscall sf::Clock::getElapsedTime(void)const " (__imp_?getElapsedTime@Clock@sf@@QBE?AVTime@2@XZ)
1>Main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Clock::Clock(void)" (__imp_??0Clock@sf@@QAE@XZ)
1>Main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: int __thiscall sf::Time::asMilliseconds(void)const " (__imp_?asMilliseconds@Time@sf@@QBEHXZ)
1>Main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall sf::RenderWindow::~RenderWindow(void)" (__imp_??1RenderWindow@sf@@UAE@XZ)

Z visual studiom in c++ nimam izkušenj, tako da sam tu novem svetu. Sklepam, da moram samo določiti kakšne poti do nekih dll fajlov?
Obstaja kakšen drug enostaven način, da prevedem tole kodo in jo spreminjam?

kow ::

Nisi napisal kaksne komande je dobil linker...

trenerkar ::

Linker je dobil privzete komande iz visual studio 2017 - empty c++ project, ker se na c++ in visual studio ne spoznam.

evo tole sem našel v linker command line nastavitvah:
/OUT:"nekineki\Particle-Life-master\particle\Release\particle.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"nekineki\Particle-Life-master\particle\Release\particle.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X86 /OPT:REF /SAFESEH /PGD:"nekineki\particle\Particle-Life-master\particle\Release\particle.pgd" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\particle.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1

kow ::

Linker ti je vrnil, da ni nasel kode funkcije:

sf::Clock::getElapsedTime()

Kje naj bi se po tvoje, ta koda nahajala?

trenerkar ::

Funkcija bi morala biti v SFML. SFML sem posnel preko NuGet package manager.

Zgodovina sprememb…

  • spremenilo: trenerkar ()

kow ::

Posnel kam? In kako ve linker kje se nahaja?
Imas kaksen dokaz, da je knjiznico nasel (si pogledal loge od linkerja?)

trenerkar ::

Saj pravim da pojma nimam kam se je posnel, ker sem ga posnel preko NuGet, sem mislil da se to zgodi avtomatsko ko ga posnameš. kje lako poglem loge od linkerja?

Zgodovina sprememb…

  • spremenilo: trenerkar ()

kow ::

Pogooglaj microsoft linker options in bos nasel...

trenerkar ::

Hvala, že deluje. Ko sem hotel pognati narejen .exe file mi je težil da ne najde .dll od SFML, tako da sem te fajle kar skopiral v Release mapo. Kako se drugače to naredi pravilno?

kow ::

Se enkrat, pojdi cez linker opcije, nasel bos opcijo s katero nastavis pod do mape, kjer imas shranjene knjiznice.

trenerkar ::

Ja to je za linker. Kaj pa za zagon programa?

kow ::

Kot vse, je tudi to komplicirana tema :D Recimo, da je najlazje imeti vse v isti mapi.

Lahko si pa popestris/zagrenis zivljenje in preberes Linkers and Loaders (Levine).


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C++] Linker error

Oddelek: Programiranje
51281 (1281) Quikee
»

[VC++] Napaka pri prevajanju

Oddelek: Programiranje
141676 (1417) Jean-Paul
»

kaj zna c#

Oddelek: Programiranje
151750 (1562) snow
»

openGL v visual c++ 6.0

Oddelek: Programiranje
211933 (1660) Lord_Rand
»

Pomoč?

Oddelek: Programiranje
121268 (1155) 4DFX

Več podobnih tem