GPL ve LGPL açık kaynak lisans kısıtlamaları [kapalı]


108

Açık kaynağın kullanım izinlerini anlamakta güçlük çekiyorum. GPL veya LGPL'nin, GPL yazılımını kullanan yazılımın da açık kaynak olarak yayınlanması gerektiğini zorladığını bir yerde okudum. Bazı açık kaynaklı görüntü tanıma kitaplıkları kullanan bir uygulama oluşturmak istiyorum. Bu uygulamayı satabilir miyim yoksa açık kaynak mı olmalı?

Teşekkürler!

Yanıtlar:


81

LGPL, uygulamanız için kaynak kodunu yayınlamadan açık kaynak yazılımı uygulamanızla birlikte kullanmanıza ve dağıtmanıza olanak tanır.

GPL lisanslı açık kaynak yazılımını uygulamanızla birlikte kullanmayı ve dağıtmayı seçerseniz, GPL, uygulamanızın kaynak kodunu yayınlamanızı gerektirir. Diğer bir deyişle, uygulamanızın da GPL kapsamında lisanslanmış olması gerekir.


14
LGPL'nin kullanılan kitaplığın değiştirilebilir olması gerektiğini belirttiğine dikkat edin. Bu nedenle statik bağlantı mümkün değildir.
Dykam

1
Yani bir "DLL" (Dinamik Bağlantı Kitaplığı) yasal olur, değil mi?
Robert Harvey

Yalnızca söz konusu DLL için kaynak kodunu ve ayrıca uygulamanın geri kalanıyla arayüz oluşturabilmek için gerekli başlık dosyalarını veya dokümantasyonu sağlarsanız, herhangi biri yoğun bir şekilde değiştirmek veya sıfırdan yeniden yazmak isterse, DLL.
thomasrutter

49
  • GPL

    Diğer geliştiriciler kodu ödünç alıp değiştirebilir ve kendi projelerinin bir parçası olarak yeniden dağıtabilir, ancak tüm projeleri de GPL altında lisanslıysa.

    Bu, kodun tescilli yazılımda kullanılmasını engeller.

  • LGPL

    LGPL kapsamında kullanılan kısmın LGPL kapsamında yeniden lisanslanması koşuluyla, diğer geliştiriciler kodu ödünç alıp değiştirebilir ve kendi projelerinin bir parçası olarak yeniden dağıtabilirler. Projenin diğer bölümlerinin başka lisanslara sahip olmasına izin verilmektedir.

    Bu, kodun başka şekilde özel mülk yazılımda kullanılmasına izin verir.

LGPL, başka bir lisansla bir projede dağıtabilmek için yerine getirilmesi gereken bir dizi ek koşula sahiptir. Örneğin, herhangi biri için mümkün olmalıdırYazılımın LGPL kapsamında lisanslanan bölümünü değiştirmek, yeniden derlemek veya değiştirmek ve bu değiştirilmiş kodu aynı yazılımla kullanmak için bitmiş yazılımın kullanıcısı. Bazı LGPL kodlarını içeren başka bir şekilde tescilli bir yazılım yayınlıyorsanız, bu gereksinimi karşılamanın bir yolu, LGPL kodunu dinamik olarak bağlantılı ayrı bir kitaplığa yerleştirmek ve LGPL'yi yeniden derlemek için gerekli başlık dosyalarını ve belgeleri yazılımınızla birlikte dağıtmaktır. yine de sağlanan yazılımla bağlanabilecek ve kullanılabilecek şekilde bir bölüm. LGPL kodunun değiştirilmesini önlemek için kodun kendisini veya API veya başlık dosyalarını şaşırtmak gibi adımların atılması kabul edilemez.

LGPL'nin GPL ile uyumlu olduğuna dikkat edin: isterseniz kodu GPL'ye "yükseltmeyi" seçebilir ve isterseniz ilk madde işaretimde belirtildiği gibi tamamen GPL lisanslı bir projeye dahil edebilirsiniz. Ancak diğer yoldan gidip GPL lisanslı kodu LGPL olarak yeniden lisanslayamazsınız.


30

IANAL, ancak kavramlar oldukça basit.

Öncelikle, siz ve avukatınız GPL ve LGPL lisanslarını okumalısınız . İkinci olarak, GPL SSS'yi okumalısınız . Anladığım kadarıyla GPL / LGPL kitaplıklarını şu şekilde kullanmayı düşünebilirsiniz:

  • Bir GPL veya LGPL kitaplığına dinamik veya statik olarak bağlanırsanız, bir türev çalışma oluşturmuş olursunuz.
  • GPL bir kitaplık kullanın ve bu kütüphane ile bağlarsanız, yazılım serbest bırakılmalıdır bir ile uyumlu lisans .
  • LGPL olan bir kitaplık kullanıyorsanız ve bu kitaplığa dinamik olarak bağlanırsanız, yazılımınızın uyumlu bir lisansla piyasaya sürülmesi gerekmez, ancak yine de LGPL'ye uymanız gerekir.
  • LGPL olan bir kitaplık kullanıyorsanız ve bu kitaplığa statik olarak bağlanırsanız, yazılımınız uyumlu bir lisansla piyasaya sürülmelidir.
  • GPL / LGPL lisansları , "özgür bira" değil, "konuşma özgürlüğü" nde olduğu gibi "özgür" anlamına gelir . Türev bir çalışma oluşturabilir ve bunu büyük miktarlarda paraya satabilirsiniz, ancak GPL / LGPL'ye uymalısınız.

29
"Öncelikle, siz ve avukatınız GPL ve LGPL lisanslarını okumalısınız." - beni şimdi öldür
d512

10
"basit". O kadar basit ki, sadece biraz kod kullanıp kullanamayacağınızı görmek için bir avukat tutmanız gerekiyor . Bu nedenle geliştiricilerin GPL lisanslarını asla kullanmaması gerekir.
Womble

9

Uygulamanıza GPL'lenmiş kodu kesip yapıştırırsanız veya bağlantı kurarsanız, uygulamanızın GPL kapsamında lisanslanması gerekir ve ardından kodu yayınlamanız gerekir.

Ancak yine de uygulamanızı satabilirsiniz ve afaik, tek zorunluluk kaynak kodunu müşterilerinize bırakmanızdır.

Bağlandığınız kütüphane Kısıtlı Gnu Kamu Lisansı veya LGPL ise, kendi uygulamanızın kodunu yayınlamanıza gerek yoktur, ancak lgpl'd kodunu değiştirdiyseniz yine de tüm değişiklikleri yayınlamanız gerekir.


"kaynak kodunu müşterilerinize yayınlayın" - gerçekten mi? sadece onlara mı? SRC'nin halka açık olması gerektiğini düşündüm.
relascope

Ben anadili İngilizce olan veya avukat değilim. gnu.org/licenses/gpl-faq.html#WhatDoesWrittenOfferValid, ikiliye erişimi olan herkese en çok kaynak sağladığını belirtir. Kimsenin kaynağı talep edebileceğini söylemez, ancak ikiliyi doğrudan sizden veya doğrudan müşterileriniz tarafından sağlanan herhangi biri.
rasjani

bunu doğrudan, yalnızca müşterilere belirtir ... "Ancak, değiştirilmiş sürümü bir şekilde kamuya yayınlarsanız, GPL, değiştirilmiş kaynak kodunu GPL altında programın kullanıcılarına sunmanızı gerektirir."
relascope

7

GPL, yazılım satmanızı yasaklamaz. Ancak, kaynakları yazılımın kullanımına sunmalısınız.

Kullanım sorunu biraz daha karmaşıktır. GNU / Linux, GPL altında yayınlandı. Yazılımınızın lisansına bakılmaksızın, hiçbir şey Linux altında çalışan bir yazılım yazmanızı yasaklamaz. Ancak, Linux'u yazılımınızla birlikte dağıtamazsınız. Bu genellikle bir programın parçası olması gereken kitaplıklarla ilgili bir sorundur. LGPL lisansı bunun için. Gcc ile yazdığınız ac programını derleyebilir (dolayısıyla gcc'den LGPL lisanslı çalışma zamanı rutin kitaplıklarını kullanarak) ve yine de GPL kısıtlamaları olmadan yazılımınızı yayınlayabilirsiniz.

Bunun genel özü olduğunu düşünüyorum. Ancak bu hiçbir şekilde hukuki tavsiye değildir. Hukuki tavsiye almak için, size özel koşullarınıza uygun hukuki tavsiye verebilecek sertifikalı bir avukat bulundurmalısınız.

Bu yardımcı olur umarım.


4

GPL ve LGPL ayrımı, uygulamanızın kaynağını ikili dosyanın bir kopyasına sahip olan herhangi birine vermeniz gerekip gerekmediğini belirler. Her iki durumda da uygulamayı satabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.