rolisz's site

SFML in Visual Studio 2010

Cand m-am apucat de SFML in Visual Studio 2010, la un moment dat m-am blocat la tutoriale, nu imi mergea o sursa care era data chiar de ei. Dupa un pic de googleit am inceput sa banuiesc ca problema este cu faptul ca ce am descarcat eu de pe siteul lor este pentru VS 2008, si din ceva motiv asta nu merge cu 2010.

Dupa vreo 2 ore de chinuit, I managed to figure out how to do it \:D/.

So here is my tutorial. First one ever.

  1. Descarcati si despa­chetati ultime versiune de SFML full SDK for Visual Studio 2008.
  2. Mergeti in folderul build/vc2008 si deschideti SFML.sln cu VS 2010.
  3. Next si Finish
  4. Patience
  5. Patience
  6. De­s­e­lec­tati "Show conversion log when the wizard is closed" si dati Close.
  7. Optional: stergeti toate proiectele care nu incep cu sfml (sunt doar programe de exemplu si compilarea lor va dura un pic mai mult).
  8. Pentru fiecare din optiunile de la Con­fig­u­ra­tion Manager, dati Build/Build Solution.
  9. Patience
  10. Daca nu ati sters proiectele de exemplu la 7 s-ar putea ca doua din ele sa dea erori la compilare, dar nu-i stres, nu va in­tere­seaza alea 2 oricum.

And that's it. Acum aveti in folderul /lib/vc2008 libraria SFML pentru VS2010.

Pentru a o folosi intr-un proiect VS2010:

  1. Creati un Empty project.
  2. Mergeti la pro­pri­etatile proiec­tu­lui.
  3. La VC++ di­rec­to­ries: la include di­rec­to­ries adaugati folderul *unde ati despa­chetat SFML*/include, iar la library adaugati folderul  *unde ati despa­chetat SFML*/lib/vc2008.
  4. La Linker/Input la Aditional de­pen­den­cies adaugati fiecare librarie pe care vreti sa o folositi din cadrul SFML (sfml-windows.lib, sfml-network.lib etc), cu atentie la versiunile debugging (au un -d "sfml-windows-d.lib") sau static  (au un -s in plus in nume "sfml-windows-s.lib").
  5. Daca folositi dynamic linking la "C/C++"/Pre­proces­sor trebuie sa adaugati la Pre­proces­sor de­f­i­n­i­tions SFM­L_­DY­NAM­IC.
  6. Happy writing!

Sper ca v-a folosit tutorialul. Daca aveti intrebari, punetile in commenturi.