Quote:Original post by _the_phantom_
@Konfusius
Its a personal thing I guess, but I just dont like it, I figure if something is free then make it free, thus my personal prefence for the zlib license. Unless there is a really good reason to have something as a DLL I prefer to compile things into my apps as well, so the LGPL focing you to either give away everything or dynamic link puts too much restraint on how I can compile my programs.
It could be fine for everyone else, but I dont like it so I prefer to avoid it and the GPL in favour of what I consider 'more free' licenses such as zlib.
Generally, I also prefer static libs to DLLs.
However, in one library I write, I decided to use LGPL, even though that lib in most cases will be statically linked.
Why? Well, AFAIK, author is free while deciding on license, and he can say:
- "I choose license X"
or
- "I choose license X but without rule Y"
Sure, then this question arises: "So, why do you use license X and then say that it's without rule Y, wouldn't it be better just to say: license K?".
As you said, "Its a personal thing" :-) also, IMHO LGPL is more familiar amongst programmers. So, in my case it looks like this:
- "I choose license GNU LGPL but you aren't forced to link dynamically"
I hope it's legal, what do you say...? If it's, then there aren't any more problems with LGPL, you know... :-)
--------------------
Btw, _the_phantom_, if that library could be configured to load .pngs, and only .pngs (probably by #ifdefing other "codecs" in code), and it could spit out newly created SDL_Surface with that image, without the need to convert it manually, then I would be the second person to use it (first would be you ;-)).
You know, SDL is rather widely used library, and with such function you could create decent competition to SDL_Image. Imagine sth like this:
#ifdef GTL_USE_SDLSDL_Surface * GTL_LoadImage(const char * filename);#elsevoid * GTL_LoadImage(const char * filename);#endif
So, in order to compile with SDL support, one would uncomment #define GTL_USE_SDL and recompile whole lib. Voila! :-)