IANAL แต่นี่คือความเห็นของฉันเกี่ยวกับสิ่งที่ได้รับอนุญาตภายในขอบเขตของ GPL:
แจกจ่ายงานรวม "A - B" ในที่สาธารณะ: ดีสามารถทำได้ภายใต้ใบอนุญาตกรรมสิทธิ์ใด ๆ
สร้าง wrapper lib D สำหรับ C โดย Y: ใช้ได้นี่ไม่ได้หมายความว่า A จะต้องอยู่ภายใต้ GPL
ใช้ผลิตภัณฑ์ที่รวมกัน "A - D - C" ภายในโดย Y: ยังดี GPL ไม่จำเป็นต้องเปิดแหล่งที่มาตราบใดที่การรวมกันไม่ได้แจกจ่ายให้กับประชาชน
กระจายงานรวมกัน "A - D - C" ในที่สาธารณะ: นี้จะต้องมีที่มาเปิดและจะอยู่ภายใต้ GPL (และมันไม่สำคัญว่า X หรือ Y กระจายชุดนี้นอกจากนี้ถ้า Y ต้องการที่จะทำ สิ่งนี้พวกเขาจะต้องมีใบอนุญาตการจัดจำหน่ายสำหรับ A จาก X แน่นอน)
คำถามที่น่าสนใจในขณะนี้คือ: สามารถกระจาย D & C แยกต่างหากเป็นโอเพ่นซอร์สภายใต้ GPL, A & B (หรือเพียงแค่ A โดยไม่ต้อง B) ได้รับการแจกจ่ายภายใต้ใบอนุญาตกรรมสิทธิ์และผู้ใช้ปลายทางแทนที่ B&C ด้วยตัวเอง?
นี่คือการปรับเปลี่ยนครั้งสุดท้ายเป็น "AB" ซึ่งทำให้ A ขึ้นอยู่กับ libs D & C จะกระทำโดยผู้ใช้ปลายทาง - หลังการแจกจ่ายหลังจากการจัดจำหน่ายดังนั้นหนึ่งอาจยืนยันว่าการปรับเปลี่ยนขั้นสุดท้ายจะทำภายในโดยผู้ใช้ปลายทางเท่านั้น และดูเหมือนว่าสิ่งนี้เป็นไปได้โดยไม่ละเมิด GPL - และสิ่งที่คุณได้รับคือการผสมผสานการทำงานของ "AC&D" โดยที่ A อยู่ภายใต้ใบอนุญาตกรรมสิทธิ์และ C&D ภายใต้ GPL
แน่นอนว่านักกฎหมายหรือผู้พิพากษาอาจมีความเห็นที่ต่างออกไป เพื่อให้ได้คำตอบสุดท้ายฉันคิดว่าคุณต้องรอจนกว่าจะมีใครลองทำและคนที่สองฟ้องเขา
ฉันเดาว่าระบบส่วนใหญ่มันจะยากที่จะสร้างกลุ่มดาวที่ไม่มีการออกแบบ "A" ตั้งแต่ต้นดังนั้นมันจะทำงานได้อย่างราบรื่นกับทั้ง B หรือ C และในกรณีนี้เราอาจสงสัยว่า A มาจากซีอย่างใด
แก้ไข: เมื่อเราคิดถึงเรื่องนี้สถานการณ์คล้าย ๆ กันก็อยู่ในใจของฉัน: การเขียนและแจกจ่ายปลั๊กอินลิขสิทธิ์ GPL สำหรับแอปพลิเคชันแบบโอเพ่นซอร์ส ลองยกตัวอย่างเช่น Photoshop ฉันไม่คิดว่าจะมีคนพยายามบังคับ Adobe ให้จริงจังกับ Photoshop โอเพ่นซอร์สเพียงเพราะมีปลั๊กอิน GPL บางส่วนจากผู้ขายบุคคลที่สาม ที่นี่ไม่จำเป็นต้องมี "wrapper lib" เนื่องจากมีอินเตอร์เฟสที่กำหนดไว้อย่างดี อย่างไรก็ตามมันจะเปลี่ยนสถานการณ์หรือไม่หาก Photoshop จะรวมฟังก์ชั่นส่วนกลางบางส่วนจากปลั๊กอินบุคคลที่สามของ GPLed ฉันคิดว่าในกรณีเช่นนี้มันอาจเป็นเรื่องยากที่จะตัดสินใจว่าจะวาดเส้นตรงไหน ณ จุดที่ผลิตภัณฑ์ปิดแหล่งที่มาเป็นงาน "ตาม" GPL lib
แก้ไข 2: มี libs สองสิทธิ์การใช้งานพร้อมกับใบอนุญาต GPL สำหรับการใช้งานที่ไม่ใช่เชิงพาณิชย์และใบอนุญาตเป็นกรรมสิทธิ์สำหรับการใช้งานเชิงพาณิชย์เช่นนี้เช่น. ดังนั้น "ช่องโหว่" ของคุณจะหมายถึงการพัฒนาผลิตภัณฑ์โดยใช้ lib (ใช้เวอร์ชันเชิงพาณิชย์ดังนั้น GPL จะไม่นำไปใช้กับผลิตภัณฑ์ของคุณ) ส่งมอบผลิตภัณฑ์ของคุณเป็นแหล่งข้อมูลปิดโดยไม่มี lib ต่อสาธารณะและปล่อยให้ ผู้ใช้จะได้รับและติดตั้งเวอร์ชัน GPLed ด้วยตัวเอง สำหรับกรณีเช่นนี้ฉันคิดว่าผู้ขาย lib จะมีโอกาสที่จะฟ้องร้องคุณเกี่ยวกับการละเมิดสิทธิ์การใช้งาน (ถ้าคุณไม่ชำระค่า lib ของเขาแน่นอน) มันคุ้มค่ากับความยุ่งยากหรือไม่? อาจจะไม่. โดยเฉพาะอย่างยิ่งในตัวอย่างที่ฉันเชื่อมโยงคุณจะต้องซื้อ lib เช่นกันเนื่องจากการกำหนดราคาไม่ได้ขึ้นอยู่กับความถี่ที่คุณขายผลิตภัณฑ์ของคุณ แต่มีกี่ devs เท่านั้นที่ใช้ lib ในระหว่างการพัฒนา
ในที่สุดเนื่องจากความเสี่ยงทางกฎหมายหากฉันตั้งใจจะใช้ libs โอเพนซอร์ซภายในผลิตภัณฑ์โอเพ่นซอร์สฉันจะหลีกเลี่ยง GPL libs หากเป็นไปได้และไม่พยายามใช้ "ช่องโหว่" นี้ LGPL หรือ GPL ที่มีข้อยกเว้นการเชื่อมโยงนั้นปลอดภัยกว่ามากหรือใบอนุญาต OS ที่ไม่ใช่ไวรัสชนิดใด ๆ