2011-08-09 9 views
7

Me gustaría saber qué debo hacer para cumplir con las licencias de las diversas herramientas de software de código abierto y las bibliotecas que utiliza mi sistema Linux incorporado.Licencias de Linux incrustadas LGPL/GPL/etc

Mi situación es la siguiente:

he un sistema Linux embebido que se ejecuta en un dispositivo embebido. Utiliza una imagen del sistema de archivos raíz que fue proporcionada por un tercero junto con la cadena de herramientas que se está utilizando para desarrollar.

He realizado algunas modificaciones en la imagen del sistema de archivos raíz agregando algunos programas compilados de código abierto (bajo varias licencias) y ahora también contiene Qt (LGPL).

Mis aplicaciones enlazan dinámicamente a las bibliotecas en el sistema de archivos raíz y también usan Qt.

Los dispositivos se entregan al usuario final con un kernel, un rootfs y una aplicación preinstalados. La aplicación que incluye el rootfs y posiblemente el kernel se puede actualizar/actualizar.


He visto que en Android los archivos y sus correspondientes licencias simplemente se enumeran en un archivo de texto largo. ¿Es necesario enumerar todos los archivos individuales de esta manera o hay otras formas de manejar este problema?

¿Cómo se hace esto normalmente?

+5

Voté para cerrar esta pregunta como fuera de tema porque ** se trata de licencias o cuestiones legales **, no de programación o desarrollo de software. [Consulte aquí] (http://meta.stackoverflow.com/a/274964/1402846) para obtener más información y [ayuda/tema] para obtener más información. –

Respuesta

7

Primero, si hay alguna posibilidad de que sufra una pérdida como resultado de obtener una licencia incorrecta, vaya a ver a un abogado de verdad. Internet no es un verdadero abogado, y no puede demandar a Internet por negligencia si le da un mal consejo.

En segundo lugar, no soy abogado, ni la mayoría de la gente está aquí. El siguiente es mi punto de vista basado en la experiencia a lo largo de los años. No me culpes si sigues mi consejo y te sale mal.

En tercer lugar, lea TODAS las licencias y asegúrese de comprender lo que están diciendo. Si no, busque una aclaración de mi primer punto.

Cuarto:

La GPL/LGPL hacer sin necesidad de la fuente con la aplicación. Requieren proporcionar la fuente "a pedido". Poniéndolo en una página web protegida con contraseña, o guardando una copia que puede grabar en CD y correo (puede cobrar por el CD y el franqueo) si alguien pregunta es suficiente.

Usted está obligado a proporcionar la fuente a cualquier binario que distribuya, incluso si esos binarios provienen de un tercero. Si el tercero no le proporciona su fuente, debe indicar los requisitos de GPL o buscar otro proveedor.No es suficiente dirigir las solicitudes de código GPL al proveedor ascendente o la página web del paquete no modificado, especialmente si proviene de un proveedor externo que probablemente lo modificó. Deberá tener cuidado con la coincidencia de la versión correcta del código con cada versión binaria que realice, de modo que pueda proporcionar la fuente a cualquier versión particular de su producto.

Debe atribuir todo el software gratuito (y no gratuito) y sus licencias. Algunas licencias no lo requieren, algunos (principios de BSD) lo hacen. Mejor prevenir que lamentar. También es una buena forma de mostrarle al usuario cuáles son las distintas licencias y permitirle tomar una decisión sobre si usar su producto.

Deberá tener mucho cuidado con los enlaces si tiene una aplicación patentada que vincule el código [L] GPL. Existe la posibilidad de que pueda vincular inadvertidamente el código con una licencia viral (GPL) y luego tendrá problemas si alguien se da cuenta y exige la fuente. Asegúrese de no vincular estáticamente el código LGPL por la misma razón (Más: Can I inline function calls to functions defined in headers of LGPL packages?).

También debería considerar incluir la fuente de su cadena de herramientas si está utilizando un compilador cruzado personalizado. No estoy seguro de que la GPL en realidad lo requiera, pero es un movimiento un poco bastardo para darle a alguien la fuente y luego no poder compilarla y enfocar su dispositivo. Soy consciente de que al menos un proveedor lo hizo: modificaron el idioma y corrigieron el compilador. No distribuyeron el compilador y, por lo tanto, no tenían la obligación de distribuir la fuente. Como resultado, fue imposible construir desde la fuente suministrada para que coincida con el objetivo. AFIK han dejado de hacerlo así que no voy a nombrar nombres.

2

Hay varias opciones. ¿Su dispositivo es lo suficientemente grande como para incluir todas las fuentes? ¿Está enviando un CD también? Probablemente no. Eso significa que debe incluir una oferta de descarga para todas las fuentes (y la cadena de herramientas, si es lo suficientemente inusual).

No tiene que descomponerlo en una base de archivos de origen, pero debe distinguir los diferentes paquetes y sus respectivas licencias. Después de todo, no querrá sugerir que haya creado una quimera de Linux y Qt. También deberá aclarar por paquete si se trata de GPLv2 o GPLv3. La lista debería ser lo suficientemente pequeña como para caber en el rootfs; Supongo que esto es visible desde el exterior?

1

This es un excelente artículo sobre cómo adaptar su proceso y sistema para garantizar el cumplimiento de la GPL.

Tenga en cuenta que la GPLv2 le permite hacer una oferta de origen, pero (según el artículo) poner un enlace de descarga en una página web no es suficiente. Debe proporcionar la fuente en un "medio habitualmente utilizado para el intercambio de software".

Cuestiones relacionadas