So - I'm really amazed by how easy to use SFML is - but I've got some questions regarding installation and usage of the library.
When I follow the tutorial to install it for MSVC++ (2010 Express of course) it gives me two options.. So i follow it, and put all the .lib files I downloaded into the MSVC++ lib directory, and then put the include directory I downloaded into MSVC++ include directory etc etc...
Of course it's not as easy as this, I was prepared for this.. So I kept reading and I discovered that I had to write in "sfml-blabla.lib" for the linker.. Done that, and I go on to try the example program.
Whoops! Still not working... So i realized it hadn't instructed me to put the .dll files into my project. So i do that, and it's now working.
This is for one single project. Just to run the example program first shown in the SFML tutorials.
For every new package i want to use in my project, I once again need to add another line to the input linker...
So, lots of text and now on to my question: Is there any easy fudging way to do this?
More of a: "Put all these files into this directory, and then MSVC will recognize the headers and classes defined."
I'm rather tired of having to do all these things all over again for every new program i create. (I know, i could just re-use the same project, but I like to save each and every one of my programs as for learning purposes and to get some kind of personal milestones. And this just simply isn't an option unless i want to spend one hour just fixing all the settings for each program.)
So, am I fudged or is there a way to make this happen? (Or atleast do it all in an easier way.)
These things are very intimidating to lame people like me. :/
So you mean that you want to link your project to a lot of static libraries (.lib files) and/or a lot of dynamic libraries (.dll)? Ok, now I don't know how much .lib files you need to link, but If you just 'save' all those names that you ever have to use, you can always add it in your new project. Don't worry, a good compiler won't put all library stuff (classes, functions, etc.) into your program, and I think VC++ 10 does that. Unfortunately, you can't just point to the directory where all the .lib files are located, you also have to say which you want to use. Although, you probably can just give the directory where the dynamic libraries are located under 'Executable Paths'. What also helps a lot are Property Pages, you can put all the linker names and paths you need to use the SFML library in property pages, then you only have to add that page to your project and you are done. If you don't know what property pages are in VC++ 2010, Google is a wonderful search engine. ^^
But You also can edit (like magni said) change the Main Property Page to search for the libs/headers/etc in the right directory for every new Project...
For Your libraby problem... Since You are using VS; the most easy way (after the template) would be to create an header file which pragmas in alll the libraries (since SFML does not have them all it is no problem, i guess)... And all You have to do in every new project is to include that header...
(Be away... SFML sucks with VS [at least with my isntallation] - only the clock-example works... noone of the rest does... And the involved Persons could not (or didnt wanted to) help me (stopped answering, when my problem exceeded their suggestions))...
I can't help you much with MSVS as I haven't used that program in almost a year now. However, I would think that in the File menu, there would be something along the lines of Save As Template...
I like to create a directory F:\DLL and add it to the PATH environment variable. Any program or DLL put there can be loaded from any working directory. The alternative is \Windows\system32 (or 64).
Raawr... I tried the PATH environment variable right after i posted, and i felt stupid not having seen it earlier - but then obviously it didn't work for some reason (i put all 5 .dll's in there) and the program was still complaining about missing .dll's.
Raawr... (second "raawr") The SDL tutorial said that the .dll could be put into \system32... My poor memory is not what it used to, it seems. :/
Thanks for all your help Helios! +kudos for you! (imaginary kudos)