Tôi dự định phát triển một chương trình mà tôi dự định sẽ bán sau này. Tôi đang cố gắng quyết định một ngôn ngữ để mã hóa nó và đã thu hẹp thành C ++ hoặc Java.
Tôi đã xem qua các giấy phép GPL v2 và v3 được sử dụng cho GCC và OpenJDK của GNU (vâng, tôi có thể hiểu một số nội dung pháp lý, nhưng rõ ràng, không phải tất cả trong số đó). Nhưng có một điểm mà mọi người đều mơ hồ (điều này đáng lẽ phải là một trong những điều đầu tiên được trả lời, IMO): nếu tôi phát triển một chương trình bằng C ++ / Java và biên dịch nó bằng trình biên dịch GCC hoặc trình biên dịch OpenJDK, tôi có thể bán nó mà không cần để đặt chương trình của tôi theo GPL là tốt?
Theo như tôi có thể nhận ra, tôi có toàn quyền chỉ định bất kỳ giấy phép nào cho chương trình của mình, nhưng, có một nhược điểm: trong giấy phép tôi không nên liên kết với bất kỳ thư viện nào thuộc GPL. Nếu vậy, tôi sẽ phải phát hành chương trình của mình theo GPL.
Bây giờ, tôi không biết những gì trong C ++ / Java được coi là một thư viện, vì vậy nếu tôi sử dụng những thứ bình thường trong C ++ (iostream, list, map, v.v.) hoặc các lớp / giao diện Java bình thường có sẵn như là một phần của JDK tiêu chuẩn 6 phân phối (Chuỗi, Danh sách, Bản đồ, v.v.), điều này có tạo thành 'liên kết đến các thư viện' không?