GPLv2 프로그램이 Apache 라이센스 라이브러리에 의존 할 수 있습니까?


12

라이센스가 부여 된 소프트웨어 프로그램 GPL (버전 2)은 GPL에 관계없이 APLv2에 따라 라이센스가 부여 된 라이브러리에 의존 할 수 있습니까? 여기 의 언어 는 아마 나에게 제안하지 않을 것입니다.

필자의 경우에는 APLv2 라이센스 외부 라이브러리를 사용하는 데몬을 찾고 있습니다.

업데이트 (답변 / 의견에 대한 답변으로)

  1. 이 질문의 목적 상, 주 프로그램 (데몬)을 재 라이센스 할 수 없습니다
  2. 주 프로그램은 apr-util아마도 다른 APLv2 구성 요소 를 사용하는 기능으로 확장되었습니다

내 질문은 GPLv2에서 확장 데몬을 해제 할 수 있습니까? 아니면 (a) 이 확장을 발표 하기 위해 노력하고 있다면 APLv2없이 나 자신에게 유지하고 (배포하지 않고) 다시 구현 해야하는 것입니까? (b) 데몬을 GPL로 유지합니까?


2
귀하가 링크 한 문서에는 해당 내용이 명확하지 않습니다. 그러나 대부분의 GPL 코드에는 "또는 선택에 따라 이후 버전"조항이 있으므로 GPLv3으로 취급 할 수 있으며 이는 정상입니다.
Jan Hudec

답변:


7

먼저 몇 가지 용어를 명확히 해 봅시다. 때 FSF가 말한다 라이선스가 GPL과 호환되는 그들은 많은 사람들이 그 의미하는 것으로 해석하는 것을 의미하지 않는다. 많은 사람들이 "호환"이라고 해석하면 두 소프트웨어가 동일한 응용 프로그램에서 행복하게 공존 할 수 있습니다.

이것은 FSF가 의미하는 바에 가깝지만 GPL의 카피 레프트 조항은 조금 더 발전합니다.

GPL FAQ 에서 강조합니다.

이는 다른 라이센스와 GNU GPL이 호환됨을 의미합니다. 다른 라이센스 하에서 릴리스 된 코드와 하나의 큰 프로그램에서 GNU GPL 하에서 릴리스 된 코드를 결합 할 수 있습니다.
모든 GNU GPL 버전은 이러한 조합을 비공개로 허용합니다. 또한 조합이 동일한 GNU GPL 버전으로 배포되는 경우 이러한 조합의 배포도 허용 합니다.

따라서 라이센스가 GPL 아래에 적용되는 경우 라이센스는 GPL과 호환됩니다.


APLv2와 GPLv3을 봅시다.

  • APLv2_Lib + GPLv3_Lib => GPLv3과 결합 된 lib는 괜찮습니다.
  • APLv2_Lib + GPLv3_Lib => APLv2로 결합 된 lib가 올바르지 않습니다.

그리고 아파치는 여기에 많은 것을 말합니다 :

GPLv3 소프트웨어는 단순히 GPLv3 작성자가 파생 작업을 생성하는 것으로 간주하기 때문에 GPLv3 소프트웨어를 사용하지 않습니다. 우리는 그들의 라이센스를 존중하고 싶습니다.


그러나 v3이 아닌 GPLv2에 따라 라이센스가 부여 된 데몬으로 작업하고 있습니다.

FSF는 여러분이하고 싶은 것이 공개 배포에 적합하지 않다는 것을 분명히 알고 있습니다.

이 라이센스는 GPL 버전이 아닌 일부 요구 사항이 있으므로 GPL 버전 2와 호환되지 않습니다. 여기에는 특정 특허 종료 및 면책 조항이 포함됩니다.

따라서 귀하의 질문에 대답하십시오 :

아닙니다 . GPLv2 및 APLv2 라이센스가있는 자료를 사용하여 결합 된 데몬을 배포 할 수 없습니다 .
FSF는 공개적으로 허용되지 않는 조합을 명시 적으로 요구합니다.

대안 :

  1. 당신 그것을 개인적으로 사용할 수 있습니다 .

  2. APLv2 기능을 다시 작성한 다음 새 작업을 GPLv2 작업과 결합해도됩니다.

  3. 데몬을 GPLv3으로 변경할 수 있는지 확인할 수 있습니다. 그렇다면 APLv2 작업을 이제 GPLv3 데몬으로 병합 할 수 있습니다.


2

내 의견은 OP의 ASF 링크 텍스트를 기반으로 OP와 동의합니다.

ASF (Apache Software Foundation)는 우산 프로젝트에 GPLv2가 있는지 여부에 관계없이 ASFv2 코드가 GPLv2를 사용하는 시스템의 일부라는 것을 좋아하지 않습니다. 사례의 제한된 정보와 다양한 FOSS 라이센스에 대한 이해 또는 우산 프로젝트가 GPLv2이며 ASFv2를 포함하려고합니다.

또한 GPLv3 코드가있는 ASFv2 우산 프로젝트는 발생하지 않아야하지만 GPLv3 우산 프로젝트는 ASFv2 코드를 가질 수 있습니다.

아마도 (Gnu에 따르면) 경고는 그들이 서로 상호 작용하는 방법입니다. 링크 된 경우 실행 중에 동일한 데이터 사본을 공유하면 동일한 프로그램에있는 것입니다. 그러나 이들이 서로 다른 별개의 프로세스간에 데이터를 전달하는 별도의 프로세스 (예 : 갈래)로 작업하는 경우 별도의 프로그램이므로 수행중인 작업이 허용 될 수 있습니다. 실행 중에 공유 데이터 공간을 사용하고 별개의 프로세스로 작동하지 않으면 수행중인 작업이 동일하거나 너무 밀접하게 결합되어 별개 또는 독립이기 때문에 허용되지 않을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.