Compiling Sylphis

First of all, great choice, choosing Sylphis and all. It's a great engine (naturally we think so) --open source, packed with features, fast, and more than all those else, easy to use. Truly, it's a great choice for whatever you're scheming, particularly if you're more an artist than a technical goose person[1]. So why then, in all things that could be asked why about, would you need to compile Sylphis, huh –you know, if it's so easy to use? Well, there're quite a few reasons, Monet, but mostly it's a matter of want and not so terribly much a need.

Let's say you're working along on your project and you run across a bug in Sylphis --not a massive show-stopper bug or anything (Sylphis doesn't have any of those types...), but just a minor annoyance that'd be nice to have taken care of. Great! So you file a bug report, and before you even finish typing the report, one of the developers picks it up and fixes the problem (mhmm, the development team really is that good). As one minor bug fix isn't enough to merit a whole release, the developer sends your way several horrifying words, “Grab the latest from SVN and compile.”

Gasping, desperate, you fling back responses: “Who is Sven; what's his email? Latest what? I already have a computer, and it's certainly not a pile of --” Thankfully, someone –anyone really, just as long as it's someone- stops you right there and points you to this bit of documentation. So here y'ar.

Or, back working on you're project, you come to a point where you realize how awesome it'd be to have the “Finish my game and make it really really good” button that's currently in development, scheduled for the next release. You're on a deadline and can't wait for the new release, but you absolutely must have this new feature (you're on a deadline, remember?). Here comes that pesky, computer-insulting Sven character again. Anyone found his email yet?

The end result of all this, whatever your situation, is you want something that's recently been developed but not released, and you haven't any interest in waiting for the release. You need the source code of Sylphis, and you need to turn the source code into something you can actually use and run; you need to compile it.

First, some general terms that you may or may not know. (If you do, feel quite free to skip over them.) Yes, some are rather basic and you very possibly'll be annoyed at me for even defining them, but, well, some people may not know some of them.

  • SVN, “Subversion” for long, is a program that allows developers to work on the same program at the same time, without having to worry about overriding anyone else's changes, basically. It also allows anyone to “check out” --that is, download- the current version of the code for themselves.
  • Compiling source code is what turns all the text files that do nothing on their own into the program you can run. Baking a cake, in a sense. To compile source code, you need a compiler; in the case of Sylphis, you specifically need a C++ compiler.

So, now that you why exactly you might want to compile Sylphis, what SVN is, and, most importantly, what compiling is, let's get to it. Sylphis is a multi-platform engine, meaning it can run on multiple operating systems; for the moment, it supports Windows and Linux. Each platform has rather different procedures for compiling source code, and thus the instructions for compiling Sylphis on the different platforms will be, you guessed it, different. And guess what? Each platform can have different compilers, and those too have different procedures. (See why there's a guide now?) With that in mind, please continue along the appropriate path.