I have an question about my understanding of Linking Proprietary software to LGPL libraries.
Based on my understanding, one can link his/her software to LGPL lib via:
- Statically: Proprietary & LGPL parts exists in 1 executable file.
- Dynamically: Proprietary part exist in 1 executable file, and connect/calls to another binary file (aka Shared library) that contains LGPL part.
If the programmer used method-1 (& wants to share the software), he/she must also give the Source-code of the program. (Users must be able to change said LGPL library, and recompile the program). If the programmer doesn't want to share source, he/she should use method-2.
When dynamically linking proprietary and LGPL-library, programmer can share only binary/executable of his/her proprietary part. And give instruction about how to install LGPL-library. (those files are usually .so
files right?).
Is my understanding correct? and Are there any things that I'm missing out (& beware of it)?
code markup
only for things which are actually code, not for all technical terminology.