Where can I find out why creators of modules in Python create multiple packages based on hardware
I use lxml and some other third party packages that I download and install using their MSI executables. However, I have long wondered why they specify different processor architectures.
Here is the list of downloads for lxml's 2.3 release
http://pypi.python.org/pypi/lxml/2.3#downloads
I don't see one for Win-Intel64 however, I did开发者_开发百科 find this on the Python download page.
The binaries for AMD64 will also work on processors that implement the Intel 64 architecture (formerly EM64T), i.e. the architecture that Microsoft calls x64, and AMD called x86-64 before calling it AMD64. They will not work on Intel Itanium Processors (formerly IA-64).
So my assumption is that any package with the Win-AMD64 designation will work on the Intel Core line of 64 bit processors but are there edge cases where this is not true? Any direction to some documentation or explanation about this would be helpful
Simple answer: if the module/package has machine code as well as Python code, architecture matters, otherwise it does not.
Caveat: if it is pure Python code, but interfaces with the hardware in some way, then architecture may matter.
Looking at lxml, I see at least two .pyd files, which are machine code.
精彩评论