Forum » Programiranje » [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?
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?
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
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?
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?)
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 ()
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.
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).
Lahko si pa popestris/zagrenis zivljenje in preberes Linkers and Loaders (Levine).
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [C++] Linker errorOddelek: Programiranje | 1281 (1281) | Quikee |
» | [VC++] Napaka pri prevajanjuOddelek: Programiranje | 1677 (1418) | Jean-Paul |
» | kaj zna c#Oddelek: Programiranje | 1750 (1562) | snow |
» | openGL v visual c++ 6.0Oddelek: Programiranje | 1934 (1661) | Lord_Rand |
» | Pomoč?Oddelek: Programiranje | 1268 (1155) | 4DFX |