libmsi.a import library from wine, and header files available (entirely free software), available for python-win32 builds under msys+wine

Luke Kenneth Casson Leighton lkcl at lkcl.net
Sun Jan 18 21:46:20 CET 2009


as part of building python2.5.2 under msys under wine on linux using
mingw, i thought i'd try building _msi.pyd just for kicks.  of course,
that required having an msi.lib import library, and associated header
files.  so, purely as an experiment, i've documented the process by
which it is possible to take wine 1.1.13 (current development release)
source code, modify the header files for use with mingw, create a
typelibrary (using dlltool) and then, surprise-surprise, _msi.pyd
successfully builds.

i say successfully builds: but then, running from _outside_ of a
wineconsole cmd, doing this:

    /usr/local/bin/wine ./python.exe -c 'import _msi'

succeeds.

but if you do this:

  /usr/local/bin/wineconsole cmd
  c:/python2.5/bin/python.exde -c 'import _msi'

you get an "access violation - no access to memory" blah blah

to be honest, i don't care about that: this message is to let people
know that it _is_ possible, and, if anyone is interested in e.g.
adding -lmsi -lcabinet support to MinGW, here's where you can get the
necessary crud:

http://lkcl.net/msi.tgz

if the wine team have any objections, if they believe this is a bad
idea, please do say so :)

l.

p.s. if anyone would like to add a regression test to python called
"test_msi.py" - or if they know of one that exists, i'd love to hear
from you and try it out.  outside of a wine cmd.exe of course :)



More information about the Python-list mailing list