MSI Installer Problem: can't install 2.4a2 on new install of Win2kSP2

Richard Hanson me at privacy.net
Fri Aug 27 14:29:55 EDT 2004


Thanks to the guidance from Martin and Dennis, I *think* that my
problem is finally at least fully worked around -- meaning Python
2.3.4 on a separate Win98 partition can now coexist with Python 2.4a2
on the Win2k partition. Booting into either OS and the respectively
installed Python's IDLE now works. 

But, I had to pull "C:\Python23" out of my Win98's PATH to make it
work. Don't know why that was there -- a fresh install of Python 2.3.4
on my Win98 partition now works (IDLE, anyway) without that entry in
Win98's PATH. And, I don't know why my Win2k or my Python 2.4a2 on
Win2k even cares about my Win98's PATH.

For academic purposes, there may be information below that still
suggests some strangeness (at least to me and my machine) re PATH on
Windows, or re having Python in another OS's PATH variable, or both. 

So, if you have the time and are interested, read on:

Martin v. Löwis wrote:

>Richard Hanson wrote:
>> If I have a directory named "Python23" with *only* the immediate
>> contents of "Lib" in it (no other files or directories nor any of
>> Lib's sub-dirs) in a separate Win98 partition, then IDLE doesn't run.
>> However, if I rename or move that dir inside another dir, then IDLE
>> runs. I can move that subsetted Python23 dir back and forth between
>> being hidden inside another dir and being in the root, without
>> rebooting, and IDLE works or not, depending on the visibility of that
>> very limited subset of the normal Python23 install directory.
>
>Could it be that you have an environment variable PYTHONHOME or
>PYTHONPATH set?

I checked that yesterday. No PYTHONHOME nor PYTHONPATH set in Win2k's
environment variables.

I checked using Two Of The Many Ways To Do The Same Thing so common
with Windows: by right-clicking on "My Computer" and then selecting
Properties | Advanced | Environment Variables, and by using System
Information. 

I found for my PATH variable:

  %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\system32\WBEM

However... 

Dennis Lee Bieber wrote:

>	Check for your search path definition(os.environ["PATH"]). It
>sounds like the W98 partition is being found before the full install
>directory, and as a result, it fails to locate some files...

Following Dennis's lead and using Python 2.4a2 (with C:\Python23
hidden) to get the environment, today I got the Win2k PATH with the
Win98 PATH concatenated to it (I subsequently rebooted into Win98 on
C: and confirmed its PATH):


E:\\WINNT\\system32;E:\\WINNT;E:\\WINNT\\system32\\WBEM;C:\\WINLICKS;
  C:\\WINLICKS\\COMMAND;C:\\Python23\\;C:\\PROGRA~1\\GRISOFT\\AVG6;
  C:\\PROGRA~1\\COMMON~1\\AUTODE~1

("WINLICKS" was what I originally named the Windows dir in the Win98
partition a while ago when I first installed it -- at the time, I may
have been a bit frustrated with Windows. [Or, is being frustrated with
Windows somewhat of a tautology? <wink>])

Also today, I tried getting my Win2k environment using Yet Another Way
-- from a Win2k console by typing in "path" -- and got the same
two-OSes-concatenated, system-variables-expanded version shown
immediately above.

Martin v. Löwis wrote:

>As for the console being mostly broken: what precisely does that mean?
>If you run cmd.exe, and start c:\python24\python.exe, what happens?
>What happens if you add a -v option to python.exe?

I also tried that, yesterday, after reading a post from Tim Peters to
John J. Lee (thread started with <1xhtg1xm.fsf at pobox.com>).

In case it has any academic value, here's the full output (with
C:\Python23 visible in the root of C) from yesterday:

|     E:\Python24>python -v
|     # installing zipimport hook
|     import zipimport # builtin
|     # installed zipimport hook
|     # C:\Python23\Lib\site.pyc matches C:\Python23\Lib\site.py
|     import site # precompiled from C:\Python23\Lib\site.pyc
|     # C:\Python23\Lib\os.pyc matches C:\Python23\Lib\os.py
|     import os # precompiled from C:\Python23\Lib\os.pyc
|     import nt # builtin
|     # C:\Python23\Lib\ntpath.pyc matches C:\Python23\Lib\ntpath.py
|     import ntpath # precompiled from C:\Python23\Lib\ntpath.pyc
|     # C:\Python23\Lib\stat.pyc matches C:\Python23\Lib\stat.py
|     import stat # precompiled from C:\Python23\Lib\stat.pyc
|     # C:\Python23\Lib\UserDict.pyc matches C:\Python23\Lib\UserDict.py
|     import UserDict # precompiled from C:\Python23\Lib\UserDict.pyc
|     # C:\Python23\Lib\copy_reg.pyc matches C:\Python23\Lib\copy_reg.py
|     import copy_reg # precompiled from C:\Python23\Lib\copy_reg.pyc
|     # C:\Python23\Lib\types.pyc matches C:\Python23\Lib\types.py
|     import types # precompiled from C:\Python23\Lib\types.pyc
|     # C:\Python23\Lib\locale.pyc matches C:\Python23\Lib\locale.py
|     import locale # precompiled from C:\Python23\Lib\locale.pyc
|     import _locale # builtin
|     # C:\Python23\Lib\codecs.pyc matches C:\Python23\Lib\codecs.py
|     import codecs # precompiled from C:\Python23\Lib\codecs.pyc
|     import _codecs # builtin
|     import encodings # directory C:\Python23\Lib\encodings
|     # C:\Python23\Lib\encodings\__init__.pyc matches C:\Python23\Lib\encodings\__ini
|     t__.py
|     import encodings # precompiled from C:\Python23\Lib\encodings\__init__.pyc
|     # C:\Python23\Lib\re.pyc matches C:\Python23\Lib\re.py
|     import re # precompiled from C:\Python23\Lib\re.pyc
|     # C:\Python23\Lib\sre.pyc matches C:\Python23\Lib\sre.py
|     import sre # precompiled from C:\Python23\Lib\sre.pyc
|     # C:\Python23\Lib\sre_compile.pyc matches C:\Python23\Lib\sre_compile.py
|     import sre_compile # precompiled from C:\Python23\Lib\sre_compile.pyc
|     import _sre # builtin
|     # C:\Python23\Lib\sre_constants.pyc matches C:\Python23\Lib\sre_constants.py
|     import sre_constants # precompiled from C:\Python23\Lib\sre_constants.pyc
|     'import site' failed; traceback:
|     Traceback (most recent call last):
|       File "C:\Python23\Lib\site.py", line 304, in ?
|         import locale, codecs
|       File "C:\Python23\Lib\codecs.py", line 692, in ?
|         strict_errors = lookup_error("strict")
|       File "C:\Python23\Lib\encodings\__init__.py", line 30, in ?
|         import codecs, exceptions, re
|       File "C:\Python23\Lib\re.py", line 5, in ?
|         from sre import *
|       File "C:\Python23\Lib\sre.py", line 97, in ?
|         import sre_compile
|       File "C:\Python23\Lib\sre_compile.py", line 17, in ?
|         assert _sre.MAGIC == MAGIC, "SRE module mismatch"
|     AssertionError: SRE module mismatch
|     # C:\Python23\Lib\warnings.pyc matches C:\Python23\Lib\warnings.py
|     import warnings # precompiled from C:\Python23\Lib\warnings.pyc
|     # C:\Python23\Lib\re.pyc matches C:\Python23\Lib\re.py
|     import re # precompiled from C:\Python23\Lib\re.pyc
|     # C:\Python23\Lib\sre.pyc matches C:\Python23\Lib\sre.py
|     import sre # precompiled from C:\Python23\Lib\sre.pyc
|     # C:\Python23\Lib\sre_compile.pyc matches C:\Python23\Lib\sre_compile.py
|     import sre_compile # precompiled from C:\Python23\Lib\sre_compile.pyc
|     Python 2.4a2 (#55, Aug  5 2004, 11:42:43) [MSC v.1310 32 bit (Intel)] on win32
|     Type "help", "copyright", "credits" or "license" for more information.

All those references to "C:\Python23" were what originally led me to
focus on the Python 2.3 install in the Win98 partition.

---

So, while I don't understand why having a separate OS on a different
partition affected 2.4a2 on Win2k as above (remembering that 2.3.4 on
Win2k worked fine with that configuration), I'm quite happy that I can
now get back to using Python rather than trying to get my laptop
"assembled." :-)

In any event, a big hearty thanks once again -- very nice, helpful
folks here!

what's-a-good-Linux-distro-for-a-laptop-with-touchscreen-'ly y'rs,
Richard

-- 
email works if unmunged:
sick<PERI0D>ole<P0INT>fart<PIE_DEC0_SYNTAX>newsguy<MARK>com



More information about the Python-list mailing list