Programación Grafica

Carlos Manuel Duclos Vergara carlos en embedded.cl
Jue Abr 28 13:00:18 CLT 2005


Holas,

>Eso es FUD. Si programas en Gtk y usas la biblioteca compartida,
>entonces no quedas expuesto a nada. Interpretaciones hay diversas, pero
>lo que importa es la _intención_ de los programadores que eligieron la
>licencia LGPL para el producto.

me sorprendes que pienses que gastaria mi tiempo diciendo algo de lo que no estoy seguro,
pero como la acusacion es grave voy a probar lo que digo.
El siguiente codigo si es escrito en tu programa sin usar un layer que separe tu programa del
resto, hace que tu codigo deba ser redistribuible bajo LGPL (y si no me crees lee la licencia con 
detencion, esta explicitamente descrito un caso de esta naturaleza)

(Si ya se que Gtk esta escrita en C, pero en C++ es mucho mas corto)

supongamos que la biblioteca que esta licenciada bajo LGPL tiene la siguiente clase:

class BOTON1 {
  ....
}

y supongamos que en tu software requieres hacer que el boton solo reaccione a determinados eventos,
por lo que haces una clase derivada de el.

class BOTON1_EXTENDIDO : public BOTON1 {
..
}

el codigo de BOTON1_EXTENDIDO debe ser redistribuido bajo LGPL, por lo que si esta dentro de tu software
te expones a tener que liberar el codigo fuente. Si lo defines en un layer intermedio solo tendras que liberar
el codigo fuente de ese layer bajo licencia LGPL y el resto del software queda protegido.

>Además, si ese es el caso, _todo_ programa en linux tendría que ser
>código abierto (recuerda, la libc es LGPL).

Nop, estas en un error. No estoy diciendo que por usar codigo LGPL tengas que liberar
tu codigo, sino que por modificar codigo LGPL al incluirlo en tu programa debes liberar el codigo.
La glibc por lo general es utilizada mediante las interfaces exportadas y ningun programa que conozca
toma un metodo de la glibc para extenderlo directamente. Todos utilizan los metodos de la glibc sin mas.
Esa es la diferencia, si tu escribes software que utilice por ejemplo strcpy() para hacer algo no tienes
ningun problema, distinto es si tu a partir de strcpy derivas una nueva funcion strcpy2, la que si debe ser 
redistribuida bajo licencia LGPL!!!!! (ver caso mencionada anteriormente)

>Normalmente no respondo al FUD absurdo, pero esta vez era en dirécta
>relación con mi propia sugerencia...

me sorprende mas a mi que pienses que iba a gastar mi tiempo diciendo tonteras, yo me tome el tiempo
de explicitamente leer las licencias del caso hace un tiempo atras para evitar meterme en lios legales en mi 
anterior trabajo y por eso estoy afirmando lo que digo. Es algo que resta ser probado legalmente, pero al
hacerlo te estas exponiendo a que alguien pueda usarlo en tu contra





Más información sobre la lista de distribución Linux