2008-10-21 26 views
7

Đây có thể là một câu hỏi ngu ngốc nhưng tôi chỉ muốn đảm bảo ...Mã thiết kế/mã do trình thủ thuật tạo ra theo giấy phép nào thuộc?

Nếu tôi kết hợp mã được tạo bởi IDE (Visual Studio trong trường hợp này) trong phần mềm của mình, tôi có thể áp dụng giấy phép của riêng mình cho mã đó hoặc nó có phải là giấy phép của riêng mình không?

+0

Không phải vì sao điều này đã bị đóng, đây là một câu hỏi rất quan trọng. –

Trả lời

3

Trong trường hợp chung, bạn nên đọc kỹ giấy phép đi kèm với trình tạo mã/trình tạo mã của bạn.

Trong phần lớn các trường hợp, mã được tạo bởi trình hướng dẫn (hoặc trình biên dịch hoặc bộ xử lý trước, v.v.) là một thực thể được phân tách hoàn toàn khỏi chính trình tạo và không có giới hạn nào được áp dụng cho nó.

Có những trường hợp, mặc dù, trong đó mã có bản quyền có thể được chèn vào mã được tạo, ví dụ như một tập hợp các hàm để hỗ trợ mã được tạo.

Cũng trong trường hợp này, hầu hết các trình tạo mã đều tuyên bố rằng mã mẫu được cấp phép theo các điều khoản rất tự do. Việc cố gắng hạn chế sửa đổi mã và tái phân phối hoặc áp đặt tiền bản quyền thời gian chạy đã chứng tỏ mình là một mô hình kinh doanh rất nghèo nàn. Tôi đã nhìn thấy nó được sử dụng bởi chương trình máy phát điện cũ trên một máy tính lớn ví dụ, nhưng không nhiều kể từ đó. Vì vậy, trong 99,9% các trường hợp bạn đồng ý làm bất cứ điều gì bạn muốn với mã được tạo ra, chỉ cần đọc bản in mịn để trang trải 0,1% còn lại

+0

Một số máy phát điện "mã" thực sự có những hạn chế, cho bất kỳ ai nghi ngờ - như một ví dụ, tôi tin rằng GCC tại một thời điểm đã buộc GPL phải tuân theo mã người biên dịch với nó. – new123456

2

Mã được tạo bởi VS dựa trên đầu vào của bạn, vì vậy trên thực tế bạn chỉ cần "biên dịch" từ ngôn ngữ cấp cao hơn (trình thiết kế tập dữ liệu hoặc trình thiết kế biểu mẫu) sang ngôn ngữ cấp thấp hơn, C# hoặc VB. Tôi không nghĩ rằng điều này khác với trình biên dịch tạo mã máy hoặc IL dựa trên mã nguồn của bạn.

3

Tôi không phải là luật sư, nhưng tôi tin rằng mã được tạo về cơ bản giống như bất kỳ đầu ra nào của chương trình khác dựa trên dữ liệu đầu vào của bạn. Trong trường hợp này, đầu ra thường được coi là thuộc sở hữu của người dùng ứng dụng (bạn) chứ không phải là nhà phát triển ứng dụng.

The GPL FAQ covers a similar topic:

Có một số cách mà tôi có thể GPL người đầu ra có được từ việc sử dụng các chương trình của tôi? Ví dụ: nếu chương trình của tôi là được sử dụng để phát triển các thiết kế phần cứng, có thể Tôi yêu cầu các thiết kế này phải là miễn phí?

Nói chung điều này là không thể hợp pháp; luật bản quyền không cung cấp cho bạn bất kỳ số nào trong việc sử dụng dữ liệu đầu ra của mọi người từ dữ liệu của họ bằng cách sử dụng chương trình của bạn. Nếu người dùng sử dụng chương trình của bạn để nhập hoặc chuyển đổi dữ liệu của riêng mình, thì bản quyền về đầu ra thuộc về anh ta, không phải bạn. Nói chung, khi một chương trình dịch đầu vào của nó sang một số hình thức khác , trạng thái bản quyền của đầu ra thừa hưởng đầu vào được tạo từ đó.

Vì vậy, cách duy nhất bạn có tiếng nói trong việc sử dụng đầu ra là các phần của đầu ra được sao chép (nhiều hơn hoặc ít hơn) từ văn bản trong chương trình của bạn. Ví dụ: Ví dụ, một phần đầu ra của Bison (xem bên trên) sẽ được bao gồm bởi GNU GPL, nếu chúng tôi không thực hiện một ngoại lệ trong trường hợp cụ thể này.

Bạn có thể giả tạo một chương trình sao chép văn bản nhất định vào đầu ra của nó ngay cả nếu không có lý do kỹ thuật để làm như vậy. Nhưng nếu văn bản được sao chép đó không phục vụ mục đích thực tế, người dùng có thể chỉ cần xóa văn bản đó khỏi đầu ra và chỉ sử dụng phần còn lại. Sau đó, anh ta sẽ không phải tuân thủ các điều kiện về phân phối lại văn bản đã sao chép.

Các vấn đề liên quan