Advertisement

GPL and External Library Source

Started by January 27, 2010 09:19 PM
10 comments, last by Sneftel 15 years, 1 month ago
Hi I have been trying to read summaries and the actual GPL v3 document itself and there is one thing I am fuzzy on and that is libraries and source. Here are my two distinct problems: Boost and Microsoft Research Detours Express My program links to a couple boost libraries and headers, and according to the GPL (I think) you need to distribute all source required to build your program from source -> binary. Does this mean I have to upload the entire boost library to sourceforge? That seems like an excessive waste of space and just poor organization compared to just saying: Boost is free and open source right on their website. The second is detours, which is closed source for the free express version so same problem but worse due to a distinct lack of source code. Any help would be appreciated. BoostDetours
You don't have to include a copy of boost, as long the exact version you compiled your program against is available somewhere (and since boost keep a pretty long archive of past versions, it should be enough to just point at the boost website).

The Detours licence, however, is not compatible with GPL. You cannot use Detours if you want to release your program under the GPL (a different open source license [maybe MIT?] would be OK though).

Here is a list of licenses that are and are not compatible with the GPL.
Advertisement
The detours license states:

"You may use, copy, reproduce, and distribute this Software for any non-commercial purpose, subject to the restrictions in this MSR-SSLA. Some purposes which can be non-commercial are teaching, academic research, public demonstrations and personal experimentation. You may also distribute this Software with books or other teaching materials, or publish the Software on websites, that are intended to teach the use of the Software for academic or other non-commercial purposes.

You may not use or distribute this Software or any derivative works in any form for commercial purposes. Examples of commercial purposes would be running business operations, licensing, leasing, or selling the Software, distributing the Software for use with commercial products, using the Software in the creation or use of commercial products or any other activity which purpose is to procure a commercial gain to you or others."

It seems to connect non-commercial with teaching and experimental, what about just release in software for free and for others to use? And it also can not be sold, so is that compatible with any open-source licenses? I'm hosting my project on sourceforge and that's the main reason I'm wondering.
"You may not use or distribute this Software or any derivative works in any form for commercial purposes"

Because GPL software can be used for commercial purposes, the two licenses are not compatible (that is, you can't release your software "not for commercial" because that would be a violation of the GPL; but you also can't release your software "for commercial" because that would be a violation of Microsoft's license).
Quote:
Original post by Codeka
"You may not use or distribute this Software or any derivative works in any form for commercial purposes"

Because GPL software can be used for commercial purposes, the two licenses are not compatible (that is, you can't release your software "not for commercial" because that would be a violation of the GPL; but you also can't release your software "for commercial" because that would be a violation of Microsoft's license).


I understand that problem, I'm asking if there are any other open-source licenses available I could use (as I can't use GPL) and whether releasing free software is considered "commercial" just based on the way they defined it above.
I release all my code under the MIT license, which is basically equivalent to public domain. The Simplified BSD license is similar, but includes an attribution clause.
Advertisement
Quote:
Original post by Sneftel
I release all my code under the MIT license, which is basically equivalent to public domain. The Simplified BSD license is similar, but includes an attribution clause.


I looked up the MIT license and found
"Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or SELL
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions: [...]"
Which leads us into the problem above with Detours.
What problem? You aren't selling or otherwise using Detours for commercial gain. Obviously it would only be your code that would fall under the MIT license, and someone who wanted to use it for commercial purposes would need to make it work without Detours, but your code is your code. Without Detours, it's not a derivative work of Detours.
Ah ok I see, sorry I'm new to all this license stuff. Thanks a lot for the help though.

EDIT: Just one last thing, the MIT license refers to "The Software" being allowed to be sold, but the finished binary would contain compiled code from detours no?
Sure. So?

This topic is closed to new replies.

Advertisement