In article <20000131093428.A17133@cnri.reston.va.us>, Greg Ward <gward@cnri.reston.va.us> writes ....
Ahh, OK, I wasn't really clear on that. I had a vague idea that some sort of registry access would be in 1.6, I gather that Mark's win32api provides registry access, and thus I assumed that something called win32api would be in 1.6. So much for blithe assumptions.
So it seems to me as if something like the following will be needed:
try: import win32api, win32con get MSVC++ registry keys from it except ImportError: do the same thing with whatever the official Python 1.6 registry access mechanism is except ImportError: just assume cl.exe is on the path
if we got the MSVC++ registry keys: use Robin Becker's code to figure out where cl.exe is supposed to be
Ugh. This is starting to look like writing an autoconf script. At least it's not in Bourne shell... >shudder<... I guess for now I should stick with the code Robin provided, since there is no "official Python 1.6 registry access mechanism" yet.
... it seems that not all of the directories obtained from the keys are actually rock solid eg they are part of the devstudio customisables. I'm fairly sure that you could add all of the Path dirs to the path set Include=all the directories in Include Dirs (; sep) set Lib=all in the lib dirs (; sep) and then cl.exe etc are supposed to work. I guess that other explicit includes and libs get looked at first so there shouldn't be any harm in adding the extras. -- Robin Becker