본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

GPL v3.0(GNU General Public License version 3, GPLv3)은 자유 소프트웨어 재단(FSF)이 2007년 6월 29일 발표한 GNU 일반 공중 라이선스의 셋째 판으로, 프로그램과 그것을 바탕으로 만든 저작물을 전달할 때 저작물 전체를 같은 조건으로 공개하게 하는 강한 카피레프트 라이선스이다.

GPL 은 누구나 프로그램을 실행·연구·수정·재배포할 자유를 보장하되, 그 자유가 파생 저작물에서도 유지되도록 저작권을 이용한다. 수정본이나 GPL 프로그램과 하나로 합친 프로그램을 남에게 넘길 때는 그 전체를 GPL 로 내놓고 소스 코드를 함께 주어야 한다. 이런 방식을 카피레프트라 하며, GPL 은 그 가운데 적용 범위가 가장 넓은 강한 카피레프트에 속한다.

셋째 판은 1991년의 GPL v2.0 을 이어받으면서 소프트웨어 특허, 다른 라이선스와의 호환, 공개해야 할 소스의 범위, 기기 안에서 수정본 실행을 막는 기술적 제한에 대한 조항을 새로 정리했다. 한국저작권위원회 공개SW 포털은 이 네 가지를 셋째 판의 가장 중요한 변화로 꼽고, '배포' 대신 '컨베이(convey)', 복제·수정·배포를 아우르는 '프로퍼게이트(propagate)'라는 용어를 쓰게 된 점을 주요 특징으로 든다.[1] 오픈 소스 이니셔티브(OSI)는 2007년 9월 5일 GPL 3.0 을 승인 라이선스로 등록했다(SPDX 식별자 GPL-3.0).[2]

  • 저작물 전체에 대한 라이선스(제5조 c) - 수정한 저작물을 전달하는 사람은 복제본을 받는 모든 사람에게 저작물 전체를, 어떻게 포장했든 모든 부분까지 GPL 로 허락해야 한다[2]
  • 대응 소스(Corresponding Source) - 목적 코드를 만들고 설치·실행·수정하는 데 필요한 소스 전부를 말한다. 저작물이 제어 흐름이나 밀접한 데이터 교환으로 특별히 필요로 하는 동적 링크된 하위 프로그램과 공유 라이브러리의 소스도 들어간다. 운영체제의 시스템 라이브러리는 빠진다[1]
  • 설치 정보 제공(제6조) - 사용자 제품(가정용 기기 등)에 담아 전달할 때는 수정본을 설치하고 실행하는 데 필요한 방법·인증키 같은 설치 정보를 함께 주어야 한다. 하드웨어가 서명된 펌웨어만 돌게 해 수정본을 막는 이른바 티보이제이션(Tivoization)을 겨냥한 조항이다[1]
  • 기술적 보호조치 우회 금지권의 포기(제3조) - GPL 저작물을 기술적 보호조치의 일부로 내세워 사용자의 수정을 법적으로 막지 못한다
  • 추가 허가(제7조) - 라이선스에 예외 허가를 덧붙일 수 있다. LGPL 3.0 은 GPLv3 에 추가 허가를 붙인 형태이다
  • 특허(제11조) - 기여자는 자신의 기여에 대한 특허 사용을 허락해야 하고, 일부 수령자에게만 유리한 차별적 특허 계약을 맺을 수 없다
  • AGPL 과의 결합(제13조) - Affero GPL 3.0 저작물과 결합할 수 있다
  • 집합물 - 성격상 확장이 아닌 독립 프로그램을 같은 매체에 묶어 둔 것은 집합물(aggregate)이라 하며, GPL 이 다른 프로그램에까지 퍼지지 않는다[2]

링크와 공개 의무

편집 원본 편집

GPL 라이브러리를 정적 링크하든 동적 링크하든, 그 라이브러리와 결합해 하나의 프로그램을 이루면 결합물 전체가 GPL 적용 저작물의 범위에 든다. 그래서 GPL v3.0 라이브러리를 링크한 상업용 프로그램을 배포하면서 자체 개발 모듈의 소스를 공개하지 않으면 라이선스 위반이 된다. GPL 전문의 끝맺음도 GPL 은 자유 소프트웨어를 사유 소프트웨어와 결합하는 것을 허용하지 않으며, 사유 프로그램이 링크하게 하려면 라이브러리에 LGPL 을 쓰라고 안내한다.[1]

라이선스 라이브러리를 링크한 상업 프로그램을 배포하며 자체 소스를 비공개 근거
GPL v3.0 정적·동적 모두 위반 결합한 저작물 전체를 GPL 로 허락해야 한다(제5조 c)
LGPL 3.0 동적 링크는 위반 아님. 정적 링크는 사용자가 라이브러리를 바꿔 다시 링크할 수 있도록 목적 코드 등을 줄 의무가 따른다 라이브러리만 카피레프트 대상
Apache 2.0 위반 아님(라이선스 사본과 고지, 변경 사실 표시만 지킨다) 소스 공개 의무가 없는 허용적 라이선스

GPL v2.0 과 구별하기

편집 원본 편집
항목 GPL v2.0 GPL v3.0
발표 1991년 2007년 6월 29일
특허 명시적 특허 허락 조항이 약하다 기여자의 특허 허락, 차별적 특허 계약 금지
기기 잠금 다루지 않는다 사용자 제품의 설치 정보 제공 의무
호환성 Apache 2.0 과 호환되지 않는다 Apache 2.0 코드를 받아들일 수 있고, AGPL 3.0 과 결합할 수 있다
용어 배포(distribute) 컨베이(convey), 프로퍼게이트(propagate)
  • 리눅스 커널은 GPL 2.0 만(only) 적용하므로 GPL 3.0 으로 바뀌지 않았다
  1. ↑ 1.0 1.1 1.2 1.3 「GNU General Public License version 3.0 (GPLv3)」, 한국저작권위원회 공개SW 포털(OLIS), https://www.olis.or.kr/license/Detailselect.do?lId=1072, 확인일: 2026-11-04.
  2. ↑ 2.0 2.1 2.2 「GNU General Public License version 3」, Open Source Initiative, https://opensource.org/license/gpl-3-0, 확인일: 2026-11-04.