On 7/20/2011 4:41 PM, Mark Hammond wrote:
On 21/07/2011 7:43 AM, Glenn Linderman wrote:
...
I still get the same behavior. Is there any debugging output produced
by py.exe that would tell what py.ini it looks in, and what the content
is? What diagnostic steps might I take to produce additional
information that would help you (or me, along the way) analyze the
issue? I do not presently have a C compiler installed on this machine,
however, unless it came along for a ride with something else.
It doesn't do exactly what you ask, but setting an environment
variable PYLAUNCH_DEBUG to any value will cause some debug output to
be generated to stdout.
Mark
It produces:
d:\>py d:\path\to\foo.py
launcher build: 64bit
launcher executable: Console
File 'C:\Users\Glenn\AppData\Roaming\py.ini' non-existent
maybe_handle_shebang: read 256 bytes
maybe_handle_shebang: BOM not found, using UTF-8
locate_pythons_for_key: unable to open PythonCore key
locate_pythons_for_key: unable to open PythonCore key
run_child: about to run 'C:\Python26\python.exe d:\path\to\foo.py'
File "d:\path\to\foo.py", line 469
child process exit code: 1
So this tells me that it didn't find a local py.ini (no surprise, I
don't have one) but doesn't tell me that it did find or read
c:\Windows\system32\py.ini much less whether I have the syntax correct
for my [defaults] section. It doesn't tell me that it didn't find a #!
line (but there isn't one).
Perhaps the problem is that there isn't one? If it finds no virtual
command, maybe it doesn't obey the [defaults] python=3 directive? The
PEP says it should act like '!#python' (I think the PEP meant
'#!python', though????). There is no " " after '!#python' in the PEP,
so that disqualifies it from being a customized command, there is no
'/usr/bin/' nor '/usr/bin/env ' in front of the 'python' so that means
it is not a virtual command; and it is not a fully-qualified name, so it
doesn't mean that case either.... looks like the PEP needs a bit of
clarification here.
I do have a python on my path, but it is 3.1.2, not 3.2.1 or 2.6.4, and
it runs 2.6.4 as the output shows. And I would expect it to run 3.2.1
with the [defaults] python=3 directive, since that is newer than 3.1.2,
which is on my PATH.
So, still a mystery.
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com