[docs] [issue9086] Wrong linking terminology in windows FAQ

John Miller report at bugs.python.org
Sat Jun 26 12:05:39 CEST 2010

New submission from John Miller <gyuval at 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: docs at python
components: Documentation
messages: 108700
nosy: docs at python, john.miller
priority: normal
severity: normal
status: open
title: Wrong linking terminology in windows FAQ
versions: Python 2.6

Python tracker <report at bugs.python.org>

More information about the docs mailing list