OS X import bug?
Martin von Loewis
loewis at informatik.hu-berlin.de
Fri Jan 25 04:57:24 EST 2002
More information about the Python-list mailing list
Fri Jan 25 04:57:24 EST 2002
- Previous message (by thread): OS X import bug?
- Next message (by thread): OS X import bug? (it gets worse)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Manoj Plakal <terabaap at yumpee.org> writes: > Is there some OS X linker option one can give > while building the extension such that > the symbols in baz.c are exposed to > foomodule.c while building module foo, > but these baz symbols are not exposed > outside module foo? Would the > "two-level namespace" as opposed > to the flat namespace be of use here? Might be. On Linux (and other SysV systems), Python uses RTLD_LOCAL when loading extensions. This means essentially that one extension cannot see any symbols of a different extension. This is by design: Python extensions ought to have separate namespaces. I'm not even sure why flat_namespace is used on OS X. I understood it to avoid the problem of duplicate symbols, whereas it appears that it is precisely *not* the intent of this approach, and that two-level namespaces are meant to be used for applications like Python. On Windows, there are only two-level namespaces; each symbol is referenced by DLL name and symbol name. Unfortunately, since the main application does not have a DLL name, you need a pythonXY.dll to provide the core Python symbols to each extension. Regards, Martin
- Previous message (by thread): OS X import bug?
- Next message (by thread): OS X import bug? (it gets worse)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list