2017.03.04
ios 에서 ffmpeg (LGPL 2.1) 사용을 검토하고 있습니다.
ios 에서는 동적링크가 없고 정적링크만 있는 것으로 알고 있는데요.
static linking 시에는 응용프로그램의 object code 를 제공하라는 가이드가 어떤 것을 의미하는지 알려주세요.
(결국 코드를 공개하라는 얘기인가요?)
- LGPL 라이브러리에 응용프로그램을 링크시킬(Static과 Dynamic
Linking 모두) 경우 해당 응용프로그램의 소스코드를 공개할 필요가 없다.
- 다만 사용자가 라이브러리 수정 후 동일한 실행 파일을
생성할 수 있도록 Static Linking시에는 응용프로그램의 Object
Code를 제공해야 한다.
------ 댓글 -------
안녕하세요.
문의하신 내용에 대한 답변입니다.
LGPL 2.1에서는 귀하가 개발한 응용프로그램에 해당 라이브러리를 정적링크 시 귀하 프로그램의 오브젝트 코드를 제공할 것을 의무화 하고 있습니다.
이러한 조건을 요구하는 이유는 귀하가 개발한 프로그램을 사용하는 자는 귀하가 LGPL 2.1 코드를 사용하여 개발한 부분에 대해서는 수정이 가능하고 이를 다시 귀하가 개발한 프로그램에 적용할 수 있는 권한을 주고 있기 때문입니다.
그러므로 귀하가 개발한 프로그램 A에 오픈소스 LGPL 2.1 라이브러리를 정적 링크 시킨다면 A의 오브젝트 코드를 공개해야 합니다.
오브젝트 코드는 소스코드를 의미하는 것이 아니고 소스코드를 컴파일한 상태의 코드(목적코드)를 의미합니다.
그러나 귀하가 개발한 프로그램의 소스코드를 공개할 의무는 없습니다.
감사합니다.
※ 법적 분쟁 발생시 본 답변은 법률적 해석이나 논리로 활용될 수 없습니다.
댓글 0
댓글 작성
댓글을 작성하려면 게시글 작성 시 입력한 이메일과 패스워드를 입력해주세요.