Sam Ferencik added the comment:
Michael,
Thanks for reopening this. You say you're using "64-bit hardware", but what
bitness is your OS and the Python interpreter?
If you read my original issue description, I only had this issue with 32-bit
Python on a 64-bit Linux system (on
Sam Ferencik added the comment:
Thanks for the analysis. I agree with you. If there's much push-back, maybe we
could introduce an alternative interface, i.e. let get_platform() do its thing,
deprecate it, and introduce something like get_interpreter_pla
Sam Ferencik added the comment:
Thanks for the context.
> A compatibility issue here is that the value provided by get_platform() is
> also used outside of Distutils, in particular by pkg_resources (provided by
> setuptools) and by pip, in both cases to help determine whether
Sam Ferencik added the comment:
Well, the maintainers of Mac OS didn't consider it a won't fix - and have this
working properly. I don't see why we couldn't try to copy what they did.
Actually, I think the impact of changing this for 32-bit Python on 64-bit Linux
shoul
Sam Ferencik added the comment:
It's very hacky on all of Windows, Unix, and OS X. That's why I don't feel
confident to propose a solution.
On Unix, specifically, the return value is heavily based on os.uname(). It
seems that the maintainers of OS X have started with the same
Sam Ferencik added the comment:
Are you asking *what* distutils does?
It tackles the problem completely differently on Windows, Unix, and OS X.
--
___
Python tracker
<http://bugs.python.org/issue18
Sam Ferencik added the comment:
Unfortunately, I don't have a patch.
Some thoughts:
To discover a 32-bit interpreter running on a 64-bit system, we could use
platform.architecture(), which returns
>>> platform.architecture()
('32bit', 'ELF')
What th
New submission from Sam Ferencik:
distutils.util.get_platform() semantically differs on (a) Windows and OS X, and
on (b) Linux.
Windows/OS X: the return value is derived from the architecture of the
*interpreter*, hence for 32-bit Python running on a 64-bit system,
get_platform() = '