歡迎光臨
每天分享高質量文章

GNU GPL 許可證常見問題解答(五) | Linux 中國

本文由高階諮詢師薛亮據自由軟體基金會(FSF)的英文原文翻譯而成,這篇常見問題解答澄清了在使用 GNU 許可證中遇到許多問題,對於企業和軟體開發者在實際應用許可證和解決許可證問題時具有很強的實踐指導意義。
— Fsf


致謝
轉載自 | https://www.gnu.org/licenses/gpl-faq.html
 作者 | Fsf
 譯者 | 薛亮

本文由高階諮詢師薛亮據自由軟體基金會(FSF)的英文原文[1]翻譯而成,這篇常見問題解答澄清了在使用 GNU 許可證中遇到許多問題,對於企業和軟體開發者在實際應用許可證和解決許可證問題時具有很強的實踐指導意義。

☉ 關於 GNU 專案、自由軟體基金會(FSF)及其許可證的基本問題[2]
☉ 對於 GNU 許可證的一般瞭解[3]
☉ 在您的程式中使用 GNU 許可證[4]
☉ 依據GNU許可證分發程式[5]
☉ 在編寫其他程式時採用依據 GNU 許可證釋出的程式
☉ 將作品與依據 GNU 許可證釋出的程式碼相結合
☉ 關於違反 GNU 許可證的問題

5 在編寫其他程式時採用依據 GNU 許可證釋出的程式

5.1 我可以在同一臺電腦上安裝一個遵循 GPL 許可證的程式和一個不相關的非自由程式嗎?(同 2.3)

可以。

5.2 我可以使用遵循 GPL 許可證的編輯器(例如 GNU Emacs)來開發非自由程式嗎?我可以使用遵循 GPL 許可證的工具(例如 GCC)來編譯它們嗎?

可以,因為編輯器和工具的版權並不改寫您所編寫的程式碼。從法律上來說,使用它們不會對適用於您程式碼的許可證施加任何限制。

有些程式出於技術原因將其自身某些部分複製到輸出檔案中,例如,Bison 將標準解析器程式複製到其輸出檔案中。在這種情況下,輸出檔案中複製的文字遵循其在原始碼中所遵循的相同許可證。同時,源自程式輸入部分的輸出部分繼承輸入部分的版權狀態。

正因為如此,Bison 也可以用來開發非自由程式。這是因為我們決定明確允許在 Bison 輸出檔案中不受限制地使用 Bison 標準解析器程式。我們之所以做出這個決定,是因為還有其他與 Bison 相媲美的工具已被許可用於非自由程式。

5.3 有沒有一些方法可以讓使用我的程式的人們得到的輸出物遵循 GPL?例如,如果我的程式用於開發硬體設計,我可以要求這些設計必須是自由的嗎?(同 3.17)

一般來說,這在法律上是不可能的;針對人們透過使用您的程式獲取資料形成的輸出物如何使用,版權法並沒有賦予您任何發言權。如果使用者使用您的程式輸入或轉換自己的資料,輸出物的版權屬於他,而不是您。更一般來說,當程式將其輸入物轉換成其他形式時,輸出物的版權狀態將繼承其得以生成的輸入物的版權狀態。

所以您對輸出物的使用擁有發言權的唯一方式是輸出物的實質部分(或多或少)是從您程式的文字中複製出來。例如,如果我們在這種具體情況下沒有例外,那麼Bison的一部分輸出物(參見問題 5.2)將被 GNU GPL 所涵蓋。

所以,即使沒有技術原因,您也可以人為製作一個程式,將某些文字複製到其輸出物中。但是,如果複製的文字沒有實際用途,使用者可以簡單地從輸出物中刪除該文字,並且僅使用其餘的內容。那麼他就不必滿足重新分發所複製文字的條件。 

5.4 在什麼情況下,遵循 GPL 的程式其輸出檔案也必須遵循 GPL 呢?

程式的輸出檔案通常不受程式程式碼的版權保護。因此,程式程式碼的許可證不適用於輸出檔案,無論是將其匯入檔案,還是製作螢幕截圖、螢幕錄影或影片。

例外情況是,程式全屏顯示來源於程式的文字和/或藝術品。該文字和/或藝術品的版權則會改寫其輸出檔案。輸出音訊的程式(例如影片遊戲)也將適用於此例外。

如果藝術品/音樂遵循 GPL,則無論您如何進行複製,GPL 都適用。不過,合理使用fair use[6]可能仍然適用。

請記住,一些程式,特別是影片遊戲,可以具有與底層遵循 GPL 的遊戲分開許可的藝術品/音訊。在這種情況下,藝術品/音訊的許可證將規定影片/流媒體可以依之產生的條款。另請參閱:1.6 我可以將GPL應用於軟體以外的其他作品嗎?[7]

5.5 如果我將我的程式移植到 GNU/Linux,這是否意味著我必須將其作為遵循 GPL 或其他自由軟體許可證的自由軟體進行釋出?

一般來說,答案是否定的——這不是法律規定。具體來說,答案取決於您要使用哪些庫以及許可證。大多數系統庫都使用 GNU LGPL 許可證[8],或者使用 GNU GPL 加上允許將庫與任何東西連結的例外宣告。這些庫可以在非自由程式中使用;但是在 LGPL 的情況下,它確實有一些必須遵循的要求。

一些庫依據 GNU GPL 單獨釋出;您必須使用與 GPL 相容的許可證才能使用這些庫。但是這些通常是更特定的庫,而在另一個平臺不會有任何類似它們的庫,所以您可能不會想要簡單地移植使用這些庫。

當然,如果您的軟體不是自由軟體,它不會對我們的社群做出貢獻,而重視軟體自由的人也會拒絕使用它。只有願意放棄軟體自由的人才會使用您的軟體,這意味著它將有效地成為人們失去軟體自由的誘因。

如果您希望有一天回頭看您的職業生涯,覺得它有助於發展一個善良和自由的社會,您需要使您的軟體成為自由軟體。 

5.6 我想將遵循 GPL 的軟體納入我的專有系統。我只依據 GPL 給予我的許可權來使用該軟體。我可以這樣做嗎?

您不能將遵循 GPL 的軟體納入專有系統。GPL 的標的是授予每個人複製、再分發、理解和修改程式的自由。如果您可以將遵循 GPL 的軟體整合到非自由系統中,則可能會使遵循 GPL 的軟體不再是自由軟體。

包含遵循 GPL 程式的系統是該 GPL 程式的擴充套件版本。GPL 規定,如果它最終釋出的話,任何擴充套件版本的程式必須依據 GPL 釋出。這有兩個原因:確保獲得軟體的使用者獲得自己應該擁有的自由,並鼓勵人們回饋他們所做的改進。

但是,在許多情況下,您可以將遵循 GPL 的軟體與專有系統一起分發。要有效地做到這一點,您必須確保自由和非自由程式之間的通訊保持一定距離arms length,而不是將它們有效地結合成一個程式。

這種情況與“納入”遵循 GPL 的軟體之間的區別,部分是實質問題,部分是形式問題。實質上是這樣的:如果兩個程式結合起來,使它們成為一個程式的兩個部分,那麼您不能將它們視為兩個單獨的程式。所以整個作品必須遵循 GPL。

如果這兩個程式保持良好的分離,就像編譯器和核心,或者像編輯器和 shell 一樣,那麼您可以將它們視為兩個單獨的程式,但是您必須恰當執行。這個問題只是一個形式問題:您如何描述您在做什麼。為什麼我們關心這個?因為我們想確保使用者清楚地瞭解軟體集合中遵循 GPL 的軟體的自由狀態。

如果人們分發遵循 GPL 的軟體,將其稱為系統(使用者已經知曉其中一部分為專有軟體)的“一部分”,使用者可能不確定其對遵循 GPL 的軟體所擁有的權利。但是如果他們知道他們收到的是一個自由程式加上另外一個程式,那麼他們的權利就會很清楚。

5.7 如果我分發了一個與我修改後的遵循 LGPL v3 的庫相連結的專有程式,那麼為了確定我正在做出的明確的專利許可授權的範圍,“貢獻者版本”contributor version是什麼?它僅是庫,還是整個組合?

“貢獻者版本”僅是您的庫版本。

5.8 依據 AGPL v3,當我根據第 13 節修改程式時,必須提供什麼樣的相應原始碼Corresponding Source

“相應原始碼”在許可證的第 1 節中定義,您應該提供其列出的內容。因此,如果您的修改版本取決於遵循其他許可證的庫,例如 Expat 許可證或 GPL v3,則相應原始碼應包括這些庫(除非是系統庫)。如果您修改了這些庫,則必須提供您修改後的原始碼。

第 13 節第一段的最後一句只是為了強化大多數人所自然地認為的那樣:儘管在第 13 節中透過特殊例外來處理與遵循 GPL v3 的程式碼相結合的情況,相應原始碼仍然應該包括以這種方式與程式相結合的程式碼。這句話並不意味著您只需提供 GPL v3 所涵蓋的原始碼;而是意味著這樣的程式碼不會從相應原始碼的定義中排除。 

5.9 在哪裡可以瞭解更多有關 GCC 執行時庫例外的資訊?

GCC 執行時庫例外包含 libgcc、libstdc ++、libfortran、libgomp、libdecnumber 以及與 GCC 一起分發的其他庫。這個例外是為了讓人們根據自己選擇的條件分發用 GCC 編譯的程式,即使這些庫的一部分作為編譯過程的一部分被包含在可執行檔案中。要瞭解更多資訊,請閱讀有關 GCC 執行時庫例外的常見問題[9]


譯者介紹:薛亮,集慧智佳智慧財產權諮詢公司高階諮詢師,擅長專利檢索、專利分析、競爭對手跟蹤、FTO 分析、開源軟體智慧財產權風險分析,致力於為網際網路企業、高科技公司提供智慧財產權諮詢服務。

贊(0)

分享創造快樂