On Wed, Jun 17, 2015 at 07:52:46AM +0000, Velummaylum Kajenthiran via Tutor wrote:
> Dear Sir/MadamI know the difference between static and dynamic linking > in C or C++. But what does it mean this in Python? Nothing. It isn't relevant to pure Python code. All Python code is dynamically linked in the C sense. The *Python interpreter* itself may be a C application, and like any other C application it might use static or dynamic linking to its own libraries. > Since it's just an > interpreter, and only having one style of import mechanism of modules, > how this make sense? It doesn't. Python module imports are always dynamic. > If I freeze my python application with > PyInstaller, Is it a kind of dynamic linking? Because, users can > replace that library by themselves in order to run my application with > different versions of libraries.What would be the meaning for this, if > I freeze this as one file exe? PyInstaller makes a copy of the Python interpreter and all the modules you use, places those copies into a single directory, and wraps that directory into a stand-alone executable file. http://pythonhosted.org/PyInstaller/#id11 As far as your Python app is concerned, nothing has changed. It just runs under a Python interpreter, and sees the same modules as before. The only difference is that it is a copy of the interpreter, and a copy of those modules. > In this case, users can not replace the > dlls in order to run my app with different versions of PySide > libraries.Actually my problems is, I'm using PySide library (with LGPL > v2.1) to develop python GUI application. Library says, I should > dynamically link to library to obey their legal terms (same as Qt). In > this case, how do I link PySide dynamically? You should probably ask on a PySide forum, but as far as I can tell you don't have to do anything special with your Python code. If you are using C or C++ code and linking to the PySide libraries, then you have to link dynamically in the C/C++ compiler. But I'm not an expert. You really ought to ask on a PySide forum. -- Steve _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor