Hậu quả của sự phụ thuộc GPL là gì?


12

Tôi đang phát triển phần mềm cho công ty của mình và tôi muốn sử dụng một số thư viện theo giấy phép GPL.

Điều gì có thể là hậu quả? Điều đó có nghĩa là mã được phát triển trên các phụ thuộc GPL này cũng sẽ nằm dưới GPL? Tôi có nghĩa vụ công bố mã nguồn của các sản phẩm này không?

Câu trả lời:


11

Tôi không phải là một luật sư , nhưng .. GPL GNU đưa ra các yêu cầu của nó khá chính xác. Tôi khuyên bạn nên đọc nó và chắc chắn bạn sẽ cần quản lý của mình đọc nó trước khi bạn đi theo cách đó.

Tuy nhiên, GPL là một giấy phép bản quyền. Vì vậy, nếu bạn không phân phối phần mềm dẫn xuất bên ngoài công ty, thì nó thường không được áp dụng.

Nếu bạn đang phát triển phần mềm thương mại, thì rõ ràng đây không phải là vấn đề, nhưng nếu bạn đang phát triển phần mềm nội bộ, nơi bạn sẽ không thực sự xuất bản phần mềm cho bất kỳ ai, thì GPL sẽ không áp dụng.


Tôi có thể hỏi tại sao ai đó hạ cấp?
TZHX

Có thể do bạn sử dụng "thương mại", đây có vẻ là một điểm nhạy cảm đối với Stallman và một số người hâm mộ FSF. "Phần mềm thương mại" không nhất thiết phải là từ đồng nghĩa với "phần mềm để bán".
David Thornley

1
@David Thornley - hmm, đó không phải là ý tôi muốn nói. Nhưng tôi có thể thấy tiềm năng cho sự mơ hồ. Cảm ơn bạn đã đưa ra một lý do, tôi sẽ cố gắng và nhận thức được điều đó trong tương lai.
TZHX

Có lẽ 'độc quyền' sẽ chính xác hơn 'thương mại' ở đây?
Jeffrey Hantin

3

Không . Nếu bạn không cung cấp phần mềm cho công chúng bằng cách nào đó (độc lập với việc nó có miễn phí hay không), bạn không phải thay đổi giấy phép của phần mềm của riêng bạn (hoặc phát hành bất kỳ phần mềm nào).


2

Bạn chỉ phải phân phối nguồn cho bất kỳ ai bạn phân phối nhị phân. Hãy cẩn thận với các giấy phép, có thể các thư viện đó là LGPL thay vì GPL, đây không phải là virus trong trường hợp của bạn.


2

Tôi rất khuyên bạn nên đọc Câu hỏi thường gặp về GPL . Hiểu rằng có nhiều hương vị khác nhau của GPL, và thư viện nào bạn muốn sử dụng sẽ ảnh hưởng đến dự án của bạn khác nhau. Trang này mô tả các giấy phép GNU khác nhau có sẵn. Tôi tin rằng bài viết về " tại sao không sử dụng LGPL " là nói đúng hơn.

Hiểu rằng có học thuyết về GPL, và những gì có thể được thực hành với GPL. Để giải quyết những rắc rối của các thư viện này, nó sẽ ảnh hưởng đến dự án thương mại của bạn như thế nào và bạn có thể làm gì để khắc phục những vấn đề đó - hãy nói chuyện với một luật sư. Có những luật sư chuyên về tư vấn GPL. GPL bị ràng buộc bởi luật pháp địa phương có thể thay thế các điều khoản của giấy phép. Richard Stallman (Ông GPL cho bạn) có một chương trình nghị sự để tạo ra nhiều phần mềm nhất có thể "miễn phí như trong tự do, không phải trong bia".

Các thuật ngữ chính cần hiểu là: xuất bản , liên kết so với nhúng (mối quan tâm của LGPL) và phân phối . Các biến thể GPL yêu cầu bạn làm cho mã nguồn của bạn có sẵn cho bất cứ ai yêu cầu nó nếu dự án của bạn nằm trong phạm vi của giấy phép. Nó không yêu cầu bạn lưu trữ nó trên một trang web nơi mọi người có thể tải xuống. Làm cho nó có sẵn có thể là một yêu cầu thư con ốc và được gửi qua giấy in ra nếu đó là cách bạn chọn để thực hiện. Mặc dù đó không phải là tinh thần của GPL, nhưng nó phù hợp với thư của giấy phép.

Nếu bạn được yêu cầu cung cấp mã nguồn của mình, hầu hết các công ty sẽ không xem xét nó bởi vì trong mắt họ nếu ai đó có quyền truy cập vào "nước sốt bí mật" thì rào cản cho các đối thủ cạnh tranh phát hành phiên bản phần mềm mới của họ sẽ gần như bị loại bỏ. Ngay cả khi bạn không phân phối các tập lệnh xây dựng của mình, không có gì nói rằng người khác không thể đi cùng và tạo chúng trên bản sao được phân phối của mã nguồn.

LƯU Ý: Có thể đáng để kiểm tra xem liệu thư viện bạn muốn sử dụng có phiên bản được cấp phép theo kiểu BSD / MIT / ASL không. Trong nhiều trường hợp, đó là bước phụ của toàn bộ vấn đề với GPL. Giấy phép BSD / MIT / ASL được thiết kế để cho phép các công ty kết hợp thư viện vào các dự án thương mại của họ mà không có bất kỳ tác dụng phụ nào. Mặc dù không có gì yêu cầu người dùng của thư viện đóng góp lại, nhưng trong hầu hết các trường hợp họ vẫn làm. Nói tóm lại, điều này cho thấy một số lập luận của Richard Stallman là thiếu sót. RS thực sự cung cấp một mục đích, vì cực kỳ cần thiết để cung cấp các lựa chọn thay thế, nơi cần có sự cân bằng hạnh phúc. Không phải tất cả những người ủng hộ GPL đều đồng ý với cách giải thích của RS về giấy phép của chính anh ta, điều này cũng làm tăng thêm sự nhầm lẫn.

Mục faq này trả lời câu hỏi ngắn gọn nhất.


2
Không, bạn không bắt buộc phải cung cấp mã nguồn cho bất kỳ ai yêu cầu. Bạn được yêu cầu cung cấp nó cho những người nhận mã nhị phân từ bạn, trực tiếp hoặc gián tiếp (xem giấy phép để biết chi tiết tại đây).
David Thornley


0

GPL là một giấy phép có tính lan truyền cao. Nếu bạn sử dụng bất kỳ thư viện GPL ở bất cứ đâu trong chương trình của bạn và kết thúc xuất bản hoặc phân phối nó, theo các điều khoản cấp phép, toàn bộ chương trình của bạn phải được xuất bản theo GPL hoặc giấy phép tương thích.


6
If the program is published, nó phải theo GPL hoặc tương thích. Nó doesn't have tođược công bố.
Arnaud Le Blanc

Chỉnh sửa cho sự yên tâm của những người quá khích. Tôi nghĩ rằng bit là rõ ràng.
Mason Wheeler

Bạn hy vọng rằng bit là rõ ràng. Tuy nhiên, tôi tiếp tục thấy các câu hỏi và tuyên bố tuyên bố rằng chương trình phải được xuất bản, và vì vậy rõ ràng là không. Vì bạn đã chỉnh sửa để nó không còn hỗ trợ một quan niệm sai lầm khá phổ biến, tôi đã xóa downvote của mình.
David Thornley
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.