Archived

This topic is now archived and is closed to further replies.

Ronin Magus

SDL lgpl

Recommended Posts

Ronin Magus    142
SDL is released under the LGPL license, right? I''ve read about the licensing on the SDL site but I just don''t have a very legal mind and it''s hard for me to understand all the requirements. Basically, my question is: Am I able to use SDL in a closed commercial project? What are the restrictions?

Share this post


Link to post
Share on other sites
johnhattan    2346
Yes. The restriction is that if you compile and link the code into your app, then your app counts as an "enhancement" of the code, and you''ve gotta make your source code available.

However, if SDL is compiled separately from your app (i.e. you use SDL.DLL), then your app is not considered an enhancement to the SDL code, and you can have your own code under an entirely different license, as you want to do.

In short, if you keep SDL in a DLL, you can keep your source closed and use it in a commercial product.

There was some question a while back about the SDL_Main.c file, which MUST be compiled into your own code, but the SDL folks have since made it clear that that particular file is an exception to their own license.

---
John Hattan
The Code Zone
Sweet software for a saturnine world

Share this post


Link to post
Share on other sites
Kylotan    9983
The ''spirit'' behind the LGPL license is this: the library is free and open, therefore the user must be able to upgrade from the version you supply to a newer version, and more importantly, a newer version that they are able to compile from the source code. This means you have two basic obligations - firstly, make sure they can get the library source that you used freely and easily, and secondly make sure that, given the correct development tools, they are able to link your program with newer or modified versions of the library covered by the LGPL.

The license itself is a bit more detailed than that, but if you remember the above rules of thumb you should be ok.

[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost | Asking Questions | Organising code files | My stuff ]

Share this post


Link to post
Share on other sites