Visual C++ 2010 a 2 na sebe zavisle projekty

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod gandor 21. 9. 2011 13:23

Zdravim.

Uz nejaku chvilu sa snazim vygooglit alebo nejak vyriesit jednu malickost (bud pouzivam zle klucove slova, alebo som prehliadol nejaku blbost a nikto s takymito vecami nema problem).

No a moj problem spociva v tom, ze mam 1 solution a v nom 2 projekty - A a B.
Projekt B je nieco ako kniznica alebo framework. Projekt A vyuziva funkcie projektu B. Teraz otazka je, ze ako ich dokopi zlinkovat tak, aby fungovali? Pokial dam v projekte A include h-ckoveho suboru s projektu B, tak mi povie, ze nenasiel implementacie. Pridat k projektu A dependency na projekt B nepomaha. Vytvarat kniznicu s projektu B by som sice mohol, ale idealne by bolo, keby som nemusel ziadnu kniznicu vytvarat a vznikal by len 1 exe subor (vlastne chcem aby projekt B bol resource projektu A).

Na konkretnu predstavu mojho umyslu - projekt B obsahuje abstrakciu k opengl pre pouzitie na viacerych hrach, ktore budem robit. Projekt A by pre zmenu mal obsahovat udaje, ktore sa tykaju len konkretnej jednej hry - teda ked vytvorim 2 hry ako pacman a tunnelers, tak napisem 2 rozne A projekty a len 1x B projekt.

Len pre pripadne spresnenie, tak pouzivam Visual studio ultimate 2010 a windows 7 64bit.

PS. zamer je hlavne naucit sa veci pouzivat a teda rada typu stiahni si uz hotovu kniznicu a podobne mi az tak nepomoze...
gandor
Mírně pokročilý

Odeslat příspěvekod piErcE 21. 9. 2011 14:02

Máš 2 možnosti.

Z Projektu B vytvářet DLL, a tu používat z programu "A".

Nebo z projektu B nechat generovat LIB, a ten linkovat k exáči v "A".
Garmin DriveLuxe 50 - iPhone SE - Octavia III 1.4 110 kW DSG
piErcE
Junior

Odeslat příspěvekod gandor 21. 9. 2011 14:21

O tychto 2 moznostiach viem.
Ani jedno sa mi nepaci a vo VS 2008 som videl presne taketo riesenie uspesne spravene (videl som len vysledok - projekt A a projekt B bezchybne spolu pracovali a boli dobre zlikovane) bez generovania dll-ka alebo lib-ka...

Nerozumiem, preco by som bol nuteny mat vo vysledku viac suborov ako je treba. Nejde nejakym sposobom vlozit obsah lib-ky (alebo aj dll-ka) do exacu (teda dat ho ako resource)?

Taktiez pri buildovani sa nastavuje ci chcem output ako debug/release/debug library/release library - Ako teda nastavim aby projekt B bol na debug library a projekt A na debug?
gandor
Mírně pokročilý

Odeslat příspěvekod piErcE 21. 9. 2011 16:42

PREČO se ti nepačí druha moznost? to je presne to, proc moznost LIB existuje

Zřejmě nechápeš, jak to funguje. LIBka se ti při linkování VLOŽÍ do výsledného exáče.
Garmin DriveLuxe 50 - iPhone SE - Octavia III 1.4 110 kW DSG
piErcE
Junior

Odeslat příspěvekod gandor 22. 9. 2011 09:30

Ok tak to pravdepodobne bude ono. Dik za radu :)
gandor
Mírně pokročilý

Odeslat příspěvekod KinDo 3. 10. 2011 14:53

to co hladas, sa vola "staticke linkovanie"
KinDo
Junior


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků