Skillster: It will probably be compatible with Win32 all the time, never worry. Most Linux applications runs on Windows almost with no tweaking as the people programming in Linux usually aren't as braindead as Windows programmers and try to *think ahead* sometimes.
Halkun: About C++ wrappers...hehe, you think I use C++ for the syntax? I have been using SDL for half a year now, and I never ever even tried searching for a C++ wrapper. What would be the point of such a wrapper? Isn't...
surface2->BlitTo(surface1, rect1, rect2);
...just the same as:
SDL_BlitSurface(surface1, rect1, surface2, rect2);
...they say exactly the same thing! There's no drawback with the C syntax, C++ wrappers are the most pointless thing ever made in most cases, only in a few cases where they extend a lot of the original functionality (like GTK-- does with it's signal system) it makes any sense.
If you think I like C++ for object.do(); rather than do(object);, then you are very mistaken. I *only* use C++ because of:
a) strong typing, constness, exceptions
b) templates
c) most importantly, polymorphism
If there was a better way doing that last point, polymorphism, in C, I would have used C, I don't care about syntax. Polymorphism in C can be extremely tedious though, so I stay with C++.
(Polymorphism is "virtual member functions", if you don't know what they can do then you should find out, because they are the only reason C++ exist, though C zealots like to think otherwise (like if having the a.b() rather than b(a) syntax has anything to say))