Monday, November 30, 2009

關於 GPL LGPL 的一點小小心得

1. GPL 具有污染性,只要你的 code 與 GPL'ed code static link 的話,你的
code 被視作 derived work,變成 GPL'ed code,也要放出 source 來。
2. 只有 dynamic link 才可以用到 LGPL 的好處特性,即:與 LGPL 的 code
dynamic link 的話,不用放出 source。但是 static link 的話,你的 code 視為
derived work,變成 LGPL。
3. 一般常見的迴避 GPL 的方法為使用 pipe 或 inter-process communication,這
樣 GPL'ed code 與你的 code 之間,就只有資料交換,沒有明顯的函數呼叫。
4. Linux kernel 有除外條款,讓上面的 application 與它 link 的話,可以不用
是 GPL。
這是 <<Building Embedded Linux Systems>> 這本書中寫的:


會去找這些,是因為我以為可以用 LGPL 當防火牆,用一個 LGPL 的程式把 GPL 包
起來,我再跟這個 LGPL 的程式 dynamic link 來迴避 GPL 的問題,看來是不行的

No comments: