[Distutils] Re: Add multiple frozen modules

M.-A. Lemburg mal@lemburg.com
Thu, 15 Jul 1999 18:12:39 +0200


James C. Ahlstrom wrote:
> 
> "M.-A. Lemburg" wrote:
> >
> > As far as I have skimmed the discussion, you are mostly talking
> > about freeze'ing on Windows platforms.
> 
> Actually, we are trying to get something which works identically
> on Windows and Unix if possible.

Ehh... I thought this was only a problem on Windows where the
default is to build a Python DLL instead of an EXE. On Unix,
freezing multiple modules into one binary is not much of a problem
(except the shared lib thing below): this is how all the cgipython
binaries for the mxCGIPython project where created.

> > The problem with this binary is that it fails to load shared
> > libs (DLLs on WinNT). This fails for both Unix and Windows
> 
> I would guess the problem on Windows is that the shared libs
> have been compiled to need Python, and so the only way they
> can get Python is in a DLL.  If the main.exe and a shared lib
> both need Python (the usual case) then Python MUST be in a
> shared lib too.  Making an exe will not work.  On Windows, the
> solution is to put the frozen Python libs into python15.dll.
> Then everything will work.

Hmm, but that wouldn't be all that elegant :-) since the code
is included twice. Even worse, I think this will mess up
the memory allocation, if I remember old mails on c.l.p regarding
malloc and DLLs on Windows correctly.

Cheers,
-- 
Marc-Andre Lemburg
______________________________________________________________________
Y2000:                                                   169 days left
Business:                                      http://www.lemburg.com/
Python Pages:                           http://www.lemburg.com/python/