[reportlab-users] Installer needs a bit of help on 64 bit Windows Server

Paul Keating Paul.Keating at nibc.com
Thu Sep 9 09:37:08 EDT 2010


Robin

Everything Python-related on this box is 64 bit. Python is embedded in the application I support, and the users need the 64-bit client to solve memory problems, which means the Python interpreter is 64-bit, and so every embedded import statement has to name a library that runs under 64 bit. That's no problem with Python or the standard library, of course, but with extensions in DLLs it is. 32-bit .pyd files don't work. This has given me a few grey hairs, because some of the Windows packagers haven't got around to 64-bit support yet (PySvn, PIL to name two).

I think you could quite easily go on using bdist_wininst. The only issue is that its check for the presence of a Python installation is a bit out of date, because it only looks for a 32-bit Python and doesn't see a 64-bit Python.

I see you've already got in touch with the distutils maintainers about this. I've never looked inside distutils, and I have an idea there's quite a lot of black magic in there. So I wouldn't hazard a guess about how hard it is to fix.

If it does turn out to be something best left to the core team, as a temporary workaround, a program that copies HKLM\Software\Python\PythonCore\n.n\InstallPath to HKLM\Software\Wow6432Node\Python\PythonCore\n.n\InstallPath, to be run ahead of the install, would do the trick and shouldn't take very long to write. I might even write one myself for when this goes into production.


Regards


-----Original Message-----
From: reportlab-users-bounces at lists2.reportlab.com [mailto:reportlab-users-bounces at lists2.reportlab.com] On Behalf Of Robin Becker
Sent: 09 September 2010 13:31
To: reportlab-users
Subject: Re: [reportlab-users] Installer needs a bit of help on 64 bit Windows Server

On 09/09/2010 12:08, Paul Keating wrote:

> I ran into a snag installing ReportLab 2.4 on a Windows Server 2003 Enterprise x64 edition, because the installer complained that it could not find Python in the registry.

>

> This happens because registry calls from 32-bit programs to

> HKLM\Software get redirected to HKLM\Software\Wow6432Node. (Extended

> explanation in KB article 896459.)

>

> I fixed this by manually copying the registry subtree

> HKLM\Software\Python to HKLM\Software\Wow6432Node\Python. (It would

> probably have been enough to copy Python\PythonCore\2.6\InstallPath

> but I wasn't in a mood to play with it.)

>

> Since there's nothing in the install but pure Python, I quite see that there doesn't need to be a separate 64-bit installer. There is a flag on RegOpenKeyEx that allows a 32-bit app to open a 64-bit registry key: KEY_WOW64_64KEY (http://msdn.microsoft.com/en-us/library/aa384129(VS.85).aspx). I don't know if distutils knows about it, though.

>

> Regards

> Paul Keating

.........

Paul,
I assume you're running everything python related as 32 bit, but that even so our win32 installer caused an error is that right?

I suppose the question is whether our installer can do anything about it. We are just using bdist_wininst to create the exe installers. Perhaps we would do better with an msi type installer ie using bdist_msi?

I'll try asking on the python list.
--
Robin Becker
_______________________________________________
reportlab-users mailing list
reportlab-users at lists2.reportlab.com
http://two.pairlist.net/mailman/listinfo/reportlab-users

The information contained in this e-mail is confidential and may be privileged. It may be read, copied and used only by the intended recipient. If you have received it in error, please contact the sender immediately by return e-mail. Please delete this e-mail and do not disclose its contents to any person. NIBC Holding N.V. nor its subsidiaries accept liability for any errors, omissions, delays of receipt or viruses in the contents of this message which arise as a result of e-mail transmission. NIBC Holding N.V. (Chamber of commerce nr. 27282935), NIBC Bank N.V. (Chamber of commerce nr. 27032036) and NIBC Investment Management N.V. (Chamber of commerce nr. 27253909) all have their corporate seat in The Hague, The Netherlands.

De informatie in dit e-mailbericht is vertrouwelijk en uitsluitend bestemd voor de geadresseerde. Wanneer u dit bericht per abuis ontvangt, gelieve onmiddellijk contact op te nemen met de afzender per kerende e-mail. Wij verzoeken u dit e-mailbericht te Vernietigen en de inhoud ervan aan niemand openbaar te maken. NIBC Holding N.V. noch haar dochterondernemingen aanvaarden enige aansprakelijkheid voor onjuiste, onvolledige dan wel ontijdige overbrenging van de inhoud van een verzonden e-mailbericht, noch voor door haar daarbij overgebrachte virussen. NIBC Holding N.V. (KvK nr. 27282935), NIBC Bank N.V. (KvK nr. 27032036) and NIBC Investment Management N.V. (KvK nr. 27253909) zijn statutair gevestigd te Den Haag, Nederland.


More information about the reportlab-users mailing list