xml.dom.minidom + py2exe

Trond Gaarder trondgaNOSPAM at student.matnat.uio.no
Fri Jul 13 09:19:58 EDT 2001


There was no _xmlplus package in Python21, but I did the same with 'xml' and
that did the trick.

Thanks!


-Trond

"Thomas Heller" <thomas.heller at ion-tof.com> wrote in message
news:9im880$jjh8j$1 at ID-59885.news.dfncis.de...
> [posted and mailed]
> "Trond Gaarder" <trondgaNOSPAM at student.matnat.uio.no> wrote in message
news:9ilk1r$quo$1 at maud.ifi.uio.no...
> > A small problem concerning py2exe that I hope you can help me with:
> >
> > I have a small OpenGL program that reads its scene graph from a XML
file. I
> > use xml.dom.minidom to accomplish this, and everything works fine. But
when
> > I try to compile the script into an .EXE with py2exe I get the following
> > warnings:
> >
> > warning: py2exe:
> > ***************************************************************
> > warning: py2exe: * The following modules were not found:
> > warning: py2exe: *   xml.dom.HierarchyRequestErr
> > warning: py2exe: *   riscosenviron
> > warning: py2exe: *   _xmlplus
> > warning: py2exe: *   ic
> > warning: py2exe: *   ce
> > warning: py2exe: *   riscos
> > warning: py2exe: *   SOCKS
> > warning: py2exe: *   rourl2path
> > warning: py2exe: *   riscospath
> > warning: py2exe:
> > ***************************************************************
> >
> > And when I try to run the program:
> >
> > Traceback (most recent call last):
> >   File "<string>", line 381, in ?
> >   File "<string>", line 299, in readScenegraph
> >   File "SceneGraph.pyc", line 187, in fromXML
> >   File "xml\dom\minidom.pyc", line 910, in parse
> >   File "xml\dom\minidom.pyc", line 901, in _doparse
> >   File "xml\dom\pulldom.pyc", line 289, in parse
> >   File "xml\sax\__init__.pyc", line 88, in make_parser
> > xml.sax._exceptions.SAXReaderNotAvailable: No parsers found
> >
> >
> > It looks like the XML module is using som kind of dynamic loader (like
Pmw
> > does), and these modules naturally escape py2exe.
>
> This is indeed the case:
>
> C:\sf\py2exe\tests>c:\python20\python.exe
> Python 2.0 (#8, Apr 25 2001, 22:09:02) [MSC 32 bit (Intel)] on win32
> Type "copyright", "credits" or "license" for more information.
> >>> import xml
> >>> xml
> <module '_xmlplus' from 'c:\python20\_xmlplus\__init__.pyc'>
> >>>
>
> As you can see, 'import xml' actually loads _xmlplus and puts this
> into sys.modules under the name 'xml'.
> This can also be done by the packed executable, however, the _xmlplus
> package must be available for this to work, and the bundling process
> does not find it.
>
> >  Do any of you have any
> > tips on how to work around this problem? Something similar to
bundlepmw.py
> > perhaps?
>
> Use the -p command line flag 'python setup.py py2exe -p _xmlplus'
> to include the whole _xmlplus package into the exe.
>
> HTH,
>
> Thomas
>
>





More information about the Python-list mailing list