Как установить python-ldap на python 2.7 virtualenv на windows без компиляции

Я использую Windows в качестве основной среды разработки python 2.7, и я хочу установить python-ldap в виртуальной среде.

Пакет python-ldap требует компиляции: (и, конечно, я не могу его скомпилировать в своей среде. Поэтому я попытался найти двоичные файлы, чтобы установить их в своей виртуальной среде с помощью easy_install (FYI вы можете сделать easy_install package.exe и пакет будет установлен). Я нашел распределенные двоичные файлы здесь: https://pypi.python.org/pypi/python-ldap/

К сожалению, они дают только пакеты .msi для python 2.7!!! Почему люди используют .msi? MSI НЕ МОЖЕТ БЫТЬ УСТАНАВЛИВАЕТСЯ ЧЕРЕЗ easy_install. Я ненавижу MSI% $# $^ # $^ # $

Да. Я могу установить пакет .msi, выполнив его, но он будет установлен в глобальных пакетах python, а не в моей виртуальной среде!

Пожалуйста, может кто-нибудь мне помочь? Я помню, что эта проблема возникла в предыдущем проекте, и мне пришлось разрабатывать ее за пределами виртуальной среды, но я не могу этого сделать сейчас: (

Обновление: Я установил python-ldap в системном масштабе и скопировал каталоги ldap и python_ldap-2.4.10-py2.7.egg-info от PYTHON_GLOBAL\Lib\site-packages к VIRTUALENV\Lib\site-packages и, похоже, сейчас работает. Однако мне действительно не нравится это решение, поэтому я не буду отвечать на этот вопрос. Кроме того, комментарий Александра о воссоздании моего virtualenv с -system-site-пакетами, вероятно, будет работать, но это означает, что мне нужно будет удалить множество моих пакетов глобальных пакетов, а затем снова установить мои виртуальные пакеты и т.д., И в целом это не DRY: (

Обновление 2: После попытки предложения cgohlke я увидел, что содержимое MSI было двумя указанными мной каталогами вместе с файлами dsml.py, ldapurl.py и ldif.py. Поэтому я также скопировал это на свои VIRTUALENV\Lib\site-packages. Теперь я считаю, что установка в порядке:). Но я считаю, что cgohlke является лучшим - просто используйте msiexec.exe для извлечения содержимого msi непосредственно на ваш VIRTUALENV.

Обновление 3: В аналогичном вопросе (Установка python-ldap в virtualenv в Windows) я нашел действительно интересную ссылку: http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap. Там вы сможете найти .EXE пакеты установки для python-ldap и много других!!! Так что, наконец, загрузив их, вы сможете easy_install их использовать в своем virtualenv!

Ответ 1

Как насчет того, чтобы установить его по всей системе, создав яйцо из установленных файлов, а затем используя это яйцо в вашем виртуальном env? Здесь вы можете найти информацию о структуре яйца: http://pythonhosted.org/setuptools/formats.html