New submission from John Miller <gyu...@gmail.com>:

The 'How can I embed Python' section in the 'Python on Windows FAQ' 
(http://docs.python.org/faq/windows.html) uses wrong terms:
What the FAQ calls static linking and dynamic linking are actally two forms of 
dynamic linking - load-time dynamic linking and run-time dynamic linking, 
respectively.
Static linking means something else entirely - linking with a library that 
itself contains the implementation, i.e. there will be no usage of the DLL at 
all. Since the FAQ states that pythonNN.lib is just an import lib, static 
linking isn't really an option with this library.

Also the FAQ states that 'The drawback to dynamic linking is that your app 
won’t run if pythonNN.dll does not exist on your system'. This is misleading 
for two reasons:
- If the application uses the DLL, it won't run as expected if the DLL doesn't 
exist, regardless of how it loads the DLL. 
- Of the two linking options, load-time dynamic linking (what the FAQ refers to 
as static linking) is actually the one that handles the missing DLL more badly: 
The app will crash upon loading. If run-time dynamic linking is used, loading 
of the DLL happens in the application code, and it can handle it however it 
chooses to - it can inform the user, disable the feature that needs the DLL, 
etc.

----------
assignee: d...@python
components: Documentation
messages: 108700
nosy: d...@python, john.miller
priority: normal
severity: normal
status: open
title: Wrong linking terminology in windows FAQ
versions: Python 2.6

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue9086>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to