How are static builds on various platforms? I confess it may be just me, but the process of trying to link anything in statically seems arcane. I haven't even begun to consider the licensing questions that arise between different forms of linking. But I do dislike having to plonk six different DLLs next to an executable, which is the current state of the Project Manager.
From what I can tell from reading the LGPL, you have to keep them as DLL/Dylib/SO.
Unfortunatly, the LGPL requires you to dynamically link if your program isn't GPL or LGPL. I find embedded platforms to be a gray area in LGPL. apple makes it pretty clear you can't use it because, well...you have to static link on ios, but what about say andriod?
Here's a quick rundown of SDL2 from my knowledge:
- Backed by Valve and others
- It does not have networking, but whyyyyyy would you want to replace that anyways? That boggles my mind. (And there is always raknet too..)*******
- Officially supports Windows, OSX, Linux, Andriod, and iOS. There are unofficial platforms supported as well.
- It supports contexts for OpenGL and Direct3D.
- Has Input, Joystick, ect support
- Has Low level audio support
- Threading with Mutex, Semaphores, Condition Vars, Atomics, ect
- Video playback
- ZLib license.
****** I believe there is actually a networking library that goes with SDL under the zlib