Installing Python binary modules to a custom locat

2019-04-08 03:20发布

问题:

Suppose that I want to install a binary module for Python on Windows. Suppose that the module is distributed as a pre-built installer xxx-n.n.n.win32-py2.7.exe, prepared using distutils.

My problem is that the installer insists on installing the package into whatever Python directory he finds in the registry. However, I have this tiny "portable" Python directory on a flash drive that I use from time to time and need to have packages installed there. That directory is not marked in the registry.

So far what I was doing was simply unpacking the installer and manually copying the files into Lib/site-packages. But perhaps there is a smarter alternative? Could I hack the distutils installer somehow to let me specify the target Python directory (as some other installers do)?

PS: Note that easy-install is not an option, as it insists on compiling packages from source, whereas I want to install the precompiled package.

回答1:

You can install binary packages using easy_install and it doesn't require compilation:

easy_install binary_installer_built_with_distutils.exe

See Can I install Python windows packages into virtualenvs?