LGPL-3.0 가이드
의무사항 요약
- 소스 형태로 재배포
 
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포한다.
 
- 수정시 의무사항
 
- 추가/수정한 부분에 LGPL-3.0을 적용한다.
 - 수정 사항에 대한 고지를 포함한다. (예: 수정일, 수정내용을 주석 형태로 포함)
 - 바이너리 형태로 재배포
 
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉한다.
 
- 수정시 의무사항
 
- 추가/수정한 부분에 LGPL-3.0을 적용한다.
 - 수정 사항에 대한 고지를 포함한다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
 - 소스 코드 제공 의무
 
- 바이너리(라이브러리)에 해당하는 전체 소스 코드를 제공한다.
 - 사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공한다.
 - 설치 정보 제공 의무 : 라이브러리를 User Product와 배포한다면 설치 정보(Installation Information)을 제공한다.
 
소스 코드 내 라이선스 문구
LGPL-3.0하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있다.
Copyright (C) <year> <name of author>
 
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
 
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
사용 사례 별 의무 사항
Case 1. 소스 형태로 재배포
LGPL-3.0하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수한다.
1-1 고지 의무
- 저작권 고지 제공
 - 보증 부인 제공
 - 라이선스 사본 제공
 
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포한다.
수정 시 의무 사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수한다.
- 추가/수정한 부분에 LGPL-3.0을 적용한다.
 - 수정 사항에 대한 고지를 포함한다. (예: 수정일, 수정내용을 주석 형태로 포함)
 
Case 2. 바이너리(라이브러리) 형태로 재배포
LGPL-3.0하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수한다.
2-1 고지 의무
- 저작권 고지 제공
 - 보증 부인 제공
 - 라이선스 사본 제공
 
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 라이브러리 재배포 시 동봉한다.
수정 시 의무 사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수한다.
- 추가/수정한 부분에 LGPL-3.0을 적용한다.
 - 수정 사항에 대한 고지를 포함한다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
 
2-2 소스 코드 제공 의무
바이너리(라이브러리)에 해당하는 소스 코드를 제공한다. 이때 다음 사항을 준수한다.
- LGPL-3.0은 파생저작물에 대해서도 LGPL-3.0을 적용하여 소스 코드를 공개할 것을 요구한다. 아래 내용을 참고하여 LGPL-3.0하의 오픈소스와 파생저작물의 소스 코드를 공개한다.
 
LGPL-3.0 파생 저작물의 범위
일반적인 LGPL-3.0의 파생 저작물의 범위는 다음과 같다.
- 라이브러리 내 수정/추가 파일
 
다음의 경우 LGPL-3.0의 파생 저작물로 보지 않는다.
- LGPL-3.0 라이브러리를 Dynamic Link하여 사용하는 프로그램
 - 참고로, Java에서 LGPL-3.0인 JAR 파일을 import하는 프로그램도 LGPL-3.0의 파생저작물로 간주하지 않는다. (http://www.gnu.org/licenses/lgpl-java.html)
 
- 사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공한다. 여기에는 다음 사항이 포함된다.
- Tool chain 정보
 - 빌드 스크립트
 - 빌드 방법 (README)
 
 - LGPL 라이브러리를 Static Link하여 생성한 실행파일(Executable)을 배포하는 경우, 사용자가 LGPL 라이브러리를 수정하고 다시 실행파일을 생성할 수 있도록 실행파일을 구성하는 오브젝트 코드를 제공한다. (#LGPLStaticVsDynamic)
 
소스 코드 대신 서면 약정서 (Written Offer)를 제공할 수 있다. 여기에는 다음 진술이 포함되어야 한다.
- 서면 약정서는 제품 판매 후 3년간 유효하다.
 - 누구에게나 제공한다.
 - 비용 청구를 하지 않는다. (소스 전달을 위해 발생하는 비용 제외)
 
2-3 설치 정보 제공 의무
라이브러리를 User Product와 배포한다면 설치 정보(Installation Information)을 제공한다.
- User Product : 전자 기기와 같은 Embedded Device
 - 설치 정보(Installation Information) : 사용자가 소스 코드를 빌드하여 다시 제품에 설치하기 위해 필요한 모든 정보 및 방법
 
사용 제한
대부분의 User Product는 보안상의 이유로 설치 정보를 제공하는 것이 불가능하다. 따라서, User Product로 배포하는 소프트웨어에는 LGPL-3.0의 오픈소스를 사용하지 않아야 한다.라이선스 호환성
서로 요구하는 의무사항이 상충되는 오픈소스 라이선스는 하나의 프로그램에 동시에 존재해서는 안된다. 다음은 LGPL-3.0과 충돌하는 라이선스 목록이다. LGPL-3.0 프로그램 내에 다음 라이선스 하의 오픈소스를 포함해서는 안된다.
- Apache-1.1
 - BSD-4-Clause
 - FTL
 - IJG
 - OpenSSL
 - Python-2.0
 - zlib-acknowledgement
 - XFree86-1.1
 
참고 : https://www.osadl.org/fileadmin/checklists/unreflicenses/LGPL-3.0-only.txt
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.