Hallo,
ich habe mir am Wochenende mal RIOT angeschaut.
Auf einem nucleo32-l432kc Board hatte ich auf Anhieb viele Beispiele
zum Laufen bekommen. Bin wirklich sehr zufrieden. Nun möchte ich nicht
nur privat damit spielen ;-) sondern auch für Projekte auf der Arbeit
einsetzen. Leider ist die Lizenz nicht MIT (freeRTOS) oder BSD(contiki)
oder Apache (Zephyr).
Auf der Webseite steht dazu
https://riot-os.org/
"""
In short, LGPLv2 allows you to redistribute, use and/or modify the free
open source code developed and maintained by the RIOT community, without
requiring you to necessarily open your code. Other software released
under LGPLv2 include for example VLC, GNU C Library, or Git, as well as
software for industrial products, such as Panasonic LCD HDTV software.
Do you need more arguments? Please read our FAQ. """
Ich kenne LGPL eher aus Linuxumfeld und zwar immer im Kontext, wenn LGPL
Code hinzugelinkt wird. Im Kontext der uC Firmware, bei dem die ELF/HEX
den kompletten Code umfasst, kann ich das "hinzulinken" nicht wirklich
schlüssig belegen. Der Code wird ja immer voll mitgegeben.
Den Applicationscode will nicht öffentlich freigeben.
Die Anpassungen und Erweiterungen an Modulen würde ich freigeben, soweit
das möglich ist.
Verwendet das einer von euch in kommerziellen Projekten?
Grüße
Das kannst du in Embeddedprogrammen vergessen, da du dann gegen die
Lizenz verstößt. Du kannst das nur machen wenn die lib als shared
library verlinkt wird, das unterstützen die Plattformen aber nicht. Weiß
der Henker was die Ersteller der Library geritten hat, diese License für
ein solches Projekt zu verwenden.
Moin,
Entwickler schrieb:> Im Kontext der uC Firmware, bei dem die ELF/HEX> den kompletten Code umfasst, kann ich das "hinzulinken" nicht wirklich> schlüssig belegen. Der Code wird ja immer voll mitgegeben.
Das versteh' ich nicht.
Nu bin ich kein Anwalt, aber ich wuerde mal zu der Ansicht tendieren,
dass wenn ich ein propietaeres hello_world.c schreibe, das gegen die
glibc gelinkt (auch statisch) wird, ich die sourcen von hello_world.c
nicht meinen Kunden weitergeben muss. Hoechstens die sourcen der glibc.
Aehnlich wuerde ich das dann mit einem rtos sehen.
Gruss
WK
Dergute W. schrieb:> ich die sourcen von hello_world.c> nicht meinen Kunden weitergeben muss. Hoechstens die sourcen der glibc.> Aehnlich wuerde ich das dann mit einem rtos sehen.
Genau so siehts aus!
Wenn du statisch linkst ist deine Ansicht IMO teilweise falsch. Du
müsstest in dem Fall wohl mindestens Objectcode deiner Anwendung
liefern, die ein (wieder statisches) Relinken mit dem LGPL Teil erlaubt.
Entwickler schrieb:> Den Applicationscode will nicht öffentlich freigeben.
Das musst du auch nicht unbedingt. Allerdings musst du die Object-Files
liefern, so dass jemand (rein theoretisch) im Stande wäre, an dem Code
unter LGPL Veränderungen vorzunehmen und hinterher wieder ein
funktionierendes Binary zu erhalten.
> Die Anpassungen und Erweiterungen an Modulen würde ich freigeben, soweit> das möglich ist.
Anpassungen und Erweiterungen an LGPL-Code musst du gezwungenermaßen
freigeben, egal was dein Chef davon hält.
Urlauber schrieb:> Weiß> der Henker was die Ersteller der Library geritten hat, diese License für> ein solches Projekt zu verwenden.
Verstehe ich auch nicht. (L)GPLv2 mit (static) linking exception wäre ja
noch ok aber LGPL halte ich für sehr problematisch.
Moin,
seere schrieb:> Wenn du statisch linkst ist deine Ansicht IMO teilweise falsch. Du> müsstest in dem Fall wohl mindestens Objectcode deiner Anwendung> liefern, die ein (wieder statisches) Relinken mit dem LGPL Teil erlaubt.
Tatsaechlich, stimmt. Naja, muss man sich halt ueberlegen, ob man's
schafft seinen proprietaeren Teil so in ein .o file zu bringen, dass in
den Symboltabellen dann nicht mehr die eigenen Funktionsnamen oder
anderes "hochgeheimes" Zeugs auftaucht...
Schon eher umstaendlich.
Gruss
WK
Dergute W. schrieb:> atsaechlich, stimmt. Naja, muss man sich halt ueberlegen, ob man's> schafft seinen proprietaeren Teil so in ein .o file zu bringen, dass in> den Symboltabellen dann nicht mehr die eigenen Funktionsnamen oder> anderes "hochgeheimes" Zeugs auftaucht...> Schon eher umstaendlich.
Das impliziert aber auch, dass deine Firmware als freier Download
verfügbar ist bzw. sich jeder ein Binary linken kann. Ein Ausleseschutz
eines Controllers wird dadurch natürlich völlig ad absurdum geführt. Das
will bestimmt nicht jeder.
Entwickler schrieb:> Auf der Webseite steht dazu
Hm direkt unter dem von Dir zitierten Abschnitt steht aber auch:
"Through this license, RIOT use is suitable for virtually all scenarios.
But if you think your use case is not covered, contact us and we will
work something out."
Im Zweifel ist also deren Kontaktformular Dein Freund ;)
Christopher J. schrieb:> Das impliziert aber auch, dass deine Firmware als freier Download> verfügbar ist bzw. sich jeder ein Binary linken kann. Ein Ausleseschutz> eines Controllers wird dadurch natürlich völlig ad absurdum geführt. Das> will bestimmt nicht jeder.
Nein, nicht jeder muss in der Lage sein zu relinken. Nur die, denen du
die Firmware übergibst. Nur denen mußt du das Relinken erlauben. Im
Zweifel alles auf Datenträger dem fertigen Produkt beipacken, fertig.
Oder den Versand eines solchen (gegen Unkosten) anbieten, auch das ist
erlaubt.
seere schrieb:> Nein, nicht jeder muss in der Lage sein zu relinken. Nur die, denen du> die Firmware übergibst. Nur denen mußt du das Relinken erlauben. Im> Zweifel alles auf Datenträger dem fertigen Produkt beipacken, fertig.> Oder den Versand eines solchen (gegen Unkosten) anbieten, auch das ist> erlaubt.
Ok, stimmt. Es bleibt jedoch ein fader Beigeschmack, dass die Firmware
prinzipiell (unter Umständen unerlaubt) weiter vetbreitet werden kann.
Danke für die vielen hilfreichen Beiträge
https://github.com/RIOT-OS/RIOT/wiki/LGPL-compliancy-guide
diese Info sollte eigentlich direkt auf die Hautpseite :)
wenn im Gerät (Messequipment) nun 1+ Baugruppen verbaut sind,
die mit dem RTOS bespielt sind, muss der Käufer in irgendeiner Art
darüber informiert werden? User Manual?
Was würde dem Kunden das nützen, wenn er keine Schaltpläne und
Verdrahtungspläne hat. Im Normalfall interessieren sich die Kunden
nur dafür, dass das System störungsfrei läuft.