In setup.py, the global variable sdk_dir is set on line 310 by find_platform_sdk_dir().
If find_platform_sdk_dir() can't find a Platform SDK it returns None, since os.environ.get("MSSdk") on line 162 returns None.
Later, sdk_dir is used as the first argument to os.path.join on line 604, but this fails with a slightly unhelpful traceback:
Traceback (most recent call last):
File "setup.py", line 1945, in <module>
""" % dirs).split(),
File "setup.py", line 604, in __init__
if os.path.isfile(os.path.join(sdk_dir, "include", "activdbg.h")):
File "H:\external\local_windows_32_vc8\python27\lib\ntpath.py", line 96, in join
assert len(path) > 0
TypeError: object of type 'NoneType' has no len()
A check for "if sdk_dir is None" after line 310 with a relevant error messge would be nice :-)
I'm hitting this problem because I'm building with Visual Studio 2005, whose Platform SDK is at C:\Program Files (x86)\Microsoft Visual Studio 8\VC\PlatformSDK (on a 64bit system, but building the 32bit binaries).
Thanks for all the hard work on this package!
Having the same issue when running through Wine.