LGPL requiere que si un programa usa la biblioteca LGPL-ed, los usuarios deben poder volver a vincular el programa con una versión diferente de la biblioteca:
...
d) Realice una de las siguientes acciones:
0) Transmitir la Fuente correspondiente mínima bajo los términos de esta Licencia, y el Código de aplicación correspondiente en una forma adecuada y bajo términos que permitan al usuario recombinar o volver a vincular la Aplicación con una versión modificada de la Versión vinculada para producir un Trabajo combinado modificado, de la manera especificada en la sección 6 de la GNU GPL para transmitir la fuente correspondiente.
1) Utilice un mecanismo de biblioteca compartida adecuado para vincular con la Biblioteca. Un mecanismo adecuado es aquel que (a) utiliza en tiempo de ejecución una copia de la Biblioteca ya presente en el sistema informático del usuario, y (b) funcionará correctamente con una versión modificada de la Biblioteca que sea compatible con la interfaz de la Versión Vinculada.
...
Sin embargo, en algunos casos, esto puede plantear dificultades considerables. En particular, los programas de Haskell casi siempre se compilan estáticamente. Además, el compilador realiza optimizaciones entre módulos, por lo que no es posible extraer una parte del código y reemplazarlo por otra. Entonces es muy difícil satisfacer esta condición. (Ver este enlace en Haskell Wiki).
La vinculación dinámica sería una solución, pero en muchos casos, esto no es posible. Por ejemplo:
- Algunas plataformas pueden no tener enlaces dinámicos en absoluto.
- Algunos idiomas no tienen la posibilidad de vinculación dinámica. O bien, no es posible hacer módulos multiplataforma.
- En algunos casos, la vinculación dinámica evitaría importantes optimizaciones. Si bien diría que esto rara vez es un problema grave, en idiomas como Haskell, la pérdida de rendimiento podría ser considerable.
Por lo tanto, estoy buscando una licencia estándar similar a LGPL que no requiera la posibilidad de volver a vincular (y entiendo que eso elimina un poco de libertad otorgada a los usuarios). Algunos proyectos usan su propia modificación de LGPL, por ejemplo wxWidgets . Pero prefiero usar alguna licencia estándar que sea algo más oficial, tal vez verificada por algunos expertos en derecho y compatible con (L) GPL. ¿Hay algo así?
(También me interesaría saber si hay algunas consecuencias imprevistas de tal modificación de LGPL).