Original Post
I'm not really a beginner but this certainly feels like beginner question on the subject. I'm a bit confused about what precisely constitutes static linking. Typically you two parts of a dynamic link library: the DLL and either a libx.a if it's GCC or a x.lib if it's Visual Studio. Now I don't actually develop in C++ so I'm using C++ only to write wrappers for C++ libs I can't use directly in other languages. If I import the libx.a, that is statically linked into the executable. Nothing I can do about that, it's part of the executable and it doesn't need to be distributed. It still won't actually run anything in the DLL without the DLL because the DLL is where all the code is. The libx.a is essentially just a connector to let you work with the DLL. To me, this is dynamic linking. All the code of the library is in the DLL, the DLL has to be distributed, it's dynamic. That's the plain English common sense approach, but since when did common sense have anything to do with legalese? And technically, the libx.a is bound into my executable, even if the libx.a doesn't actually contain any code from the library. So my question is simply: does the LGPL view what I've described as dynamic or static linking?