A question about GPL
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
Trollslayer wrote:
I assume that if I made a LIB and linked it into my software then the software would come under GPL.
No, not then, only when you need to 'grant the license' to someone else. In other words, redistributing it for commercial/public consumption.
xacc.ide - now with TabsToSpaces support
IronScheme - 1.0 beta 2 - out now!
((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x)) -
Trollslayer wrote:
I assume that if I made a LIB and linked it into my software then the software would come under GPL.
No, not then, only when you need to 'grant the license' to someone else. In other words, redistributing it for commercial/public consumption.
xacc.ide - now with TabsToSpaces support
IronScheme - 1.0 beta 2 - out now!
((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x)) -
I think it depends on if you are creating a "derivative work" or not, and the exact definition of that is subject to lawyerly discussion. From http://www.ibm.com/developerworks/rational/library/edge/08/mar08/curran/index.html[^] GPLv3 adds more clarity with regard to what constitutes a derivative work. For example, GPLv3 states that if the program is "specifically designed" to work with a GPL-governed library, then the library is considered part of the overall work and the entire application is governed by the GPL. However, if one could swap out the GPL library for another library (i.e., if the application wasn't "specifically designed" to work with the GPL library), then it's not part of the overall work and would not be governed by the license.
The DLL created would be used for one part of the tool, there would be others that would have quite separate functionality well beyond the scope of DVB-snoop. Thanks, this helps clear things up.
Visit http://www.notreadytogiveup.com/[^] and do something special today.
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
Here's what the GNU v3 people have to say about it: Q. I'd like to incorporate GPL-covered software in my proprietary system. Can I do this? A. You cannot incorporate GPL-covered software in a proprietary system. The goal of the GPL is to grant everyone the freedom to copy, redistribute, understand, and modify a program. If you could incorporate GPL-covered software into a non-free system, it would have the effect of making the GPL-covered software non-free too. A system incorporating a GPL-covered program is an extended version of that program. The GPL says that any extended version of the program must be released under the GPL if it is released at all. This is for two reasons: to make sure that users who get the software get the freedom they should have, and to encourage people to give back improvements that they make. However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program. The difference between this and “incorporating” the GPL-covered software is partly a matter of substance and partly form. The substantive part is this: if the two programs are combined so that they become effectively two parts of one program, then you can't treat them as two separate programs. So the GPL has to cover the whole thing. If the two programs remain well separated, like the compiler and the kernel, or like an editor and a shell, then you can treat them as two separate programs—but you have to do it properly. The issue is simply one of form: how you describe what you are doing. Why do we care about this? Because we want to make sure the users clearly understand the free status of the GPL-covered software in the collection. If people were to distribute GPL-covered software calling it “part of” a system that users know is partly proprietary, users might be uncertain of their rights regarding the GPL-covered software. But if they know that what they have received is a free program plus another program, side by side, their rights will be clear
print "http://www.codeproject.com".toURL().text Ain't that Groovy?
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
AFAIK all the applications using the GPL library must be released as GPL. :)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles] -
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
Trollslayer wrote:
I assume that if I made a LIB and linked it into my software then the software would come under GPL.
I've always assumed so - the point of the LGPL is that you can link to LGPL libraries and your application isn't infected by the LGPL.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
-
Here's what the GNU v3 people have to say about it: Q. I'd like to incorporate GPL-covered software in my proprietary system. Can I do this? A. You cannot incorporate GPL-covered software in a proprietary system. The goal of the GPL is to grant everyone the freedom to copy, redistribute, understand, and modify a program. If you could incorporate GPL-covered software into a non-free system, it would have the effect of making the GPL-covered software non-free too. A system incorporating a GPL-covered program is an extended version of that program. The GPL says that any extended version of the program must be released under the GPL if it is released at all. This is for two reasons: to make sure that users who get the software get the freedom they should have, and to encourage people to give back improvements that they make. However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program. The difference between this and “incorporating” the GPL-covered software is partly a matter of substance and partly form. The substantive part is this: if the two programs are combined so that they become effectively two parts of one program, then you can't treat them as two separate programs. So the GPL has to cover the whole thing. If the two programs remain well separated, like the compiler and the kernel, or like an editor and a shell, then you can treat them as two separate programs—but you have to do it properly. The issue is simply one of form: how you describe what you are doing. Why do we care about this? Because we want to make sure the users clearly understand the free status of the GPL-covered software in the collection. If people were to distribute GPL-covered software calling it “part of” a system that users know is partly proprietary, users might be uncertain of their rights regarding the GPL-covered software. But if they know that what they have received is a free program plus another program, side by side, their rights will be clear
print "http://www.codeproject.com".toURL().text Ain't that Groovy?
-
I would make the DLL source available unde GPL of course which seems fair.
Visit http://www.notreadytogiveup.com/[^] and do something special today.
If possible, to keep them at arms length, you'd probably be safer writing a wrapper to the DLL that takes parameters via the command line and calling the wrapper app as a separate process.
Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
LGPLv2 allows you to link GPL-incompatible code dynamically, but not statically. GPLv2 allows neither. I don't think GPLv3 is any more liberal.
-
Here's what the GNU v3 people have to say about it: Q. I'd like to incorporate GPL-covered software in my proprietary system. Can I do this? A. You cannot incorporate GPL-covered software in a proprietary system. The goal of the GPL is to grant everyone the freedom to copy, redistribute, understand, and modify a program. If you could incorporate GPL-covered software into a non-free system, it would have the effect of making the GPL-covered software non-free too. A system incorporating a GPL-covered program is an extended version of that program. The GPL says that any extended version of the program must be released under the GPL if it is released at all. This is for two reasons: to make sure that users who get the software get the freedom they should have, and to encourage people to give back improvements that they make. However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program. The difference between this and “incorporating” the GPL-covered software is partly a matter of substance and partly form. The substantive part is this: if the two programs are combined so that they become effectively two parts of one program, then you can't treat them as two separate programs. So the GPL has to cover the whole thing. If the two programs remain well separated, like the compiler and the kernel, or like an editor and a shell, then you can treat them as two separate programs—but you have to do it properly. The issue is simply one of form: how you describe what you are doing. Why do we care about this? Because we want to make sure the users clearly understand the free status of the GPL-covered software in the collection. If people were to distribute GPL-covered software calling it “part of” a system that users know is partly proprietary, users might be uncertain of their rights regarding the GPL-covered software. But if they know that what they have received is a free program plus another program, side by side, their rights will be clear
print "http://www.codeproject.com".toURL().text Ain't that Groovy?
Ultimately the question is whether your software is legally classed as a derivative of dvbsnoop. There does not seem to be much consensus in the legal community of exactly what constitutes a derivative when dynamic linking is involved. Note that this issue is outside the scope of the GPL, and so what the GPL people say about it is nothing more than their own (imho biased) opinion. Why don't you contact the author/s of dvb-snoop and ask their opinion on the matter. Regardless of whether you can technically 'get around' the GPL, it is generally good to respect the authors wishes. They might not mind at all.
-
LGPLv2 allows you to link GPL-incompatible code dynamically, but not statically. GPLv2 allows neither. I don't think GPLv3 is any more liberal.
What about using the MySql .Net Connector (which is licenced under GPL)? If i include it in one of my projects (C# WinForms app), will the GPL transfer to my app as well?.
-
What about using the MySql .Net Connector (which is licenced under GPL)? If i include it in one of my projects (C# WinForms app), will the GPL transfer to my app as well?.
No, it wouldn't transfer. But if you want to distribute your app, it would be unlawful to do so, unless your application's license is GPL.
-- Kein Mitleid Für Die Mehrheit
-
Trollslayer wrote:
I assume that if I made a LIB and linked it into my software then the software would come under GPL.
I've always assumed so - the point of the LGPL is that you can link to LGPL libraries and your application isn't infected by the LGPL.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
Stuart Dootson wrote:
you can link to LGPL libraries
Only dynamically. The FSF saw that it was hard to distinguish between static linking and source code inclusion, hence the dynamic clause.
-- Kein Mitleid Für Die Mehrheit
-
No, it wouldn't transfer. But if you want to distribute your app, it would be unlawful to do so, unless your application's license is GPL.
-- Kein Mitleid Für Die Mehrheit
Sorry for the incomplete question. Yes, the application will be distributed but not under GPL. (it will be a closed, comercial licence) So the only legal way is to purchase the connector licence from MySql AB. Correct?
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
I'm afraid that GPL (and GPL v3 in particular) is specifically designed to stop you from doing this. If the library is licenced under LGPL however you may be in luck with the DLL approach. Personally I consider the whole area so damn muddy that anything that even smells of GPL is barred from going anywhere near our codebase.
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
Sorry for the incomplete question. Yes, the application will be distributed but not under GPL. (it will be a closed, comercial licence) So the only legal way is to purchase the connector licence from MySql AB. Correct?
Yep, that's the deal.
-- Kein Mitleid Für Die Mehrheit
-
Yep, that's the deal.
-- Kein Mitleid Für Die Mehrheit
10x for your time
-
I'm afraid that GPL (and GPL v3 in particular) is specifically designed to stop you from doing this. If the library is licenced under LGPL however you may be in luck with the DLL approach. Personally I consider the whole area so damn muddy that anything that even smells of GPL is barred from going anywhere near our codebase.
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
There is a Linux tool called DVB-snoop which would save me a lot of work if I could use some of it's functions under Windows but it is under GPL. The equestion is - if I created a DLL then naturally the code of the DLL would be under GPL but what about and applications that use the DLL? I assume that if I made a LIB and linked it into my software then the software would come under GPL. Thanks in advance. Elaine (daintily diligent fluffy tigress)
Visit http://www.notreadytogiveup.com/[^] and do something special today.
A software license is not worth the paper it is written on IF it can be legally circumvented. Problem: You want to use a GPL licensed program/library in your product. Conditions: Your product is not solely based on the GPL program and could be sold without it but would have better functionality incorporating it. Solution: 1) Person A (not you or your company) produces a DLL interface to the GPL program and releases this on the Web with full documentation, source code etc. to completly comply with the appropriate GPL license. 2) Your product calls Person A's DLL but the .LIB file and include files are based soley on documentation, not actual source files in Person A's product. 3) You release your product, but do NOT include Person A's product in the distribution. BUT your install could point to a Person A's Web site which could contain an automatic install. ------------------------------------------------------------------ Or as someone else pointed out, Person A could but a command line wrapper around the library and do as above. For all you GPL lovers you have to realise that you can't differentiate between a GPLed piece of code running in the same process space as a comercial piece of code or one running on the same CPU or the same computer or the same network. They ALL interact between each other and you either allow your free code to be run or not!
modified on Tuesday, March 24, 2009 8:31 AM
-
I'm afraid that GPL (and GPL v3 in particular) is specifically designed to stop you from doing this. If the library is licenced under LGPL however you may be in luck with the DLL approach. Personally I consider the whole area so damn muddy that anything that even smells of GPL is barred from going anywhere near our codebase.
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
We are in the same situation. The only way we use open source in our applications is if the license grants explicit free and unencumbered use for commercial purposes.
Software Zen:
delete this;