From: Grant E. <gr...@vi...> - 2007-08-29 19:50:17
|
On 2007-08-29, Thomas Heller <th...@ct...> wrote: >>>> Why not put them in a Numeric directory like they are in the >>>> normal library tree? Wouldn't that avoid all these namespace >>>> collision problems? >>> >>> That may be. A better approach for py2exe might be to rename >>> them into 'Numeric.foobar.pyd'. >> >> How would the file that's loading the .pyd files know they >> have been renamed by py2exe? > > Loading .pyds from the dist directory does not use the normal > mechanism anyway - the dist directory is not on sys.path (not > by default). > > Loading pyds works by loader modules that py2exe creates. If > you open the library.zip file with winzip I'm not using a zipped library, since doing so breaks the scipy package. :)_ > or a similar utility you'll see that it has a xxx.pyc or > xxx.pyo file in it (in the correct location relative to the > package) for each xxx.pyd file that is in the dist directory. I see. Since py2exe is creating xxx.pyc, it can know that the .pyd file has been named module.path.xxx.pyd instead of just xxx.pyd. It looks like one or the other needs to be done: 1) Locate the .pyd files in the same directory as the corresponding .py[do] file. 2) Make sure the .pyd file names are unique (e.g. by prepending the original object module's path). The current assumption that all object modules found in the python library tree have unique filenames is clearly not valid. -- Grant Edwards grante Yow! With YOU, I can be at MYSELF ... We don't NEED visi.com Dan Rather ... |