2010-09-08 96 views
4

我有一個封閉源代碼的應用程序,它從命令行調用未修改的GPL二進制文件。我需要用我的應用程序分發GPL二進制文件。我是否可以將其包含在安裝程序中,同時保持我的應用程序關閉源並遵守GPL許可條款?或者我需要一個不同的二進制分發方法?包含GPL二進制文件的安裝程序

+0

什麼GPL版本? – 2010-09-08 17:45:01

+4

我投票結束這個問題作爲題外話題,因爲它涉及許可或法律問題,而不是編程本身。有關詳細信息,請參閱此處](http://meta.stackoverflow.com/q/274963/369450)以及[幫助中心](http://stackoverflow.com/help/on-topic)以​​獲取更多信息。 – cpburnz 2015-06-08 12:59:36

回答

1

是的,你可以分發一個GPL'ed二進制文件。

您應該注意許可證或幫助中的某處 - 關於該二進制文件是GPL和獲取源代碼的位置。如果你還沒有修改它 - 你不必提供源代碼。

有一個鏈接到compliance guide,雖然這需要一個非常'專業的GPL'系列,暗示如果你不是GPL,你必須做很多工作。

編輯:也許一個好的測試是GPL的原創'自由'目標。
您的使用是否允許用戶將GPL的零件更換爲更新版本或自己的版本?
你只是使用GPL二進制文件的標準命令行調用,或者你是否依賴特定的二進制構建(通過內存修補或DLL加載技術中的一些奇怪現象),或者故意使用例如。校驗和?

+0

有趣的文件。但它增加了更多的困惑。我在4.1.3中讀到:正如上一節所討論的,GPLv2§3(c)和GPLv3§6(c)僅適用於非商業用途。 – 2010-09-08 18:09:58

0

如果您的軟件在沒有GPL軟件的情況下無法運行,則將其視爲一種組合。因此,你必須製作你自己的軟件GPL。

GPL比LGPL更嚴格,它允許引用二進制文件而無需將軟件作爲GPL或LGPL發佈。

鏈接ABC靜態或動態 與其他模塊正在基於ABC一個 組合工作。因此,GNU 通用公共許可證的 條款和條件覆蓋整個 組合

http://www.gnu.org/licenses/gpl-faq.html#LinkingOverControlledInterface

如果我是你,我會聯絡GPL軟件的作者,讓他們的書面許可,做你必須做的事情。我沒有看到他們爲什麼會拒絕的正當理由。

+0

那是他們的意見。沒有內核,Oracle就無法工作 - 它不會製作Oracle GPL。最好的合法解決方案是從$ BIG CORP找到一個與你一樣的例子 - 那麼如果你不符合Oracle/MSFT/Google等。 – 2010-09-08 18:08:09

+0

我理解你的觀點,但內核可以被視爲一個操作系統而不是一個簡單的軟件。 GPL軟件的所有者也可以與商業公司取消特定的許可。這就是所謂的雙重授權。 ExtJs就是一個很好的例子。 – 2010-09-08 18:12:03

+0

那裏有各種各樣的意見,例如。管道是好的,但內存中的過程不是,在您的管轄範圍內,沒有一個在法庭上已經過測試。這就是爲什麼我建議找到一個例子,說明有更多$的人做了同樣的事情 - 至少讓你有一段時間站穩腳跟! – 2010-09-08 18:29:32

相關問題