Установка Fabric в Windows (ошибка: модуль не называется Readline) - PullRequest
3 голосов
/ 16 декабря 2009

Я пытаюсь использовать инструмент развертывания Fabric 0.1.1 (http://docs.fabfile.org/) в Windows, и у нас возникает проблема с модулем readline . Я прошел через различные темы, но, похоже, не могу решить эту проблему. Это важно, потому что мы не можем развертывать приложения с компьютеров под управлением Windows.

C:\Documents and Settings\dev\Desktop\deploy>fab
Traceback (most recent call last):
  File "C:\python\Scripts\fab-script.py", line 8, in <module>
    load_entry_point('fabric==0.1.1', 'console_scripts', 'fab')()
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 277, in load_entry_point
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 2180, in load_entry_point
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\pkg_resources.py"
, line 1913, in load
  File "build\bdist.win32\egg\fabric.py", line 25, in <module>
**ImportError: No module named readline**

Установка модуля приводит к:

**easy_install readline**
Searching for readline
Reading http://pypi.python.org/simple/readline/
Reading http://www.python.org/
Best match: readline 2.6.4
Downloading http://pypi.python.org/packages/source/r/readline/readline-2.6.4.tar
.gz#md5=7568e8b78f383443ba57c9afec6f4285
Processing readline-2.6.4.tar.gz
Running readline-2.6.4\setup.py -q bdist_egg --dist-dir c:\docume~1\ji81b9~1.che
\locals~1\temp\easy_install-pzkz1a\readline-2.6.4\egg-dist-tmp-szs2ps
Traceback (most recent call last):
  File "C:\python\Scripts\easy_install-script.py", line 8, in <module>
    load_entry_point('setuptools==0.6c9', 'console_scripts', 'easy_install')()
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1671, in main
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1659, in with_ei_usage
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 1675, in <lambda>
  File "c:\python\lib\distutils\core.py", line 152, in setup
    dist.run_commands()
  File "c:\python\lib\distutils\dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "c:\python\lib\distutils\dist.py", line 995, in run_command
    cmd_obj.run()
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 211, in run
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 446, in easy_install
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 476, in install_item
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 655, in install_eggs
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 930, in build_and_install
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\comman
d\easy_install.py", line 919, in run_setup
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 27, in run_setup
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 63, in run
  File "c:\python\lib\site-packages\setuptools-0.6c9-py2.6.egg\setuptools\sandbo
x.py", line 29, in <lambda>
  File "setup.py", line 93, in <module>
AttributeError: 'module' object has no attribute 'symlink'

Кто-нибудь решил эту проблему или кто-нибудь может предложить решение?

Ответы [ 6 ]

4 голосов
/ 18 мая 2013

Следующие шаги точно сработали для меня:

1) Устанавливается с помощью MSI installer для x86 из здесь .

2) Установлен в каталог C: \ Python27 по умолчанию.

3) Создайте новый каталог: C: \ Python27 \ Scripts

4) Добавлены сценарии C: \ Python27 и C: \ Python27 \ в системный путь:

imageEnvironment Variables>Path">

5) Загрузите distribte_setup.py из здесь в C: \ Python27 \ Scripts

6) Откройте командную строку, перейдите в C: \ Python27 \ Scripts, запустите: 'python distribte_setup.py'

7) теперь запустите 'easy_install pip'

8) теперь запустите 'pip install fabric'

9) Вы должны получить сообщение о том, что PyCrypto не может быть установлен. Вы можете загрузить предварительную сборку двоичного файла Windows с здесь . Запустите это, чтобы установить PyCrypto.

10) снова запустите 'pip install fabric' и он должен сказать, что все установлено.

11) в другом каталоге (скажем, c: \ dev \ hello) создайте файл fabfile.py и добавьте следующий код:

def hello(name="world"):
    print("Hello %s!" % name)

12) Перейдите в этот каталог и запустите 'fab hello: working'. Вы должны увидеть результат, скажем

Hello working!

Done.
4 голосов
/ 16 декабря 2009

Модуль readline, который вы пытаетесь установить с помощью easy_install, предназначен для OS X, а не для Windows. Существуют Windows-совместимые замены readline, но, возможно, вам следует сначала попробовать обновить fabric до более новой версии ( 0.9 уже там).

Поиск исходного кода в версии 0.9 не находит никаких зависимостей от readline.

2 голосов
/ 20 декабря 2009

0.1.1 - более старая версия, я полагаю. У меня нет проблем при установке Fabric в Windows с ActivePython (w / PyPM ):

C:\> pypm install fabric
Ready to perform these actions:
The following packages will be installed:
 fabric-0.9.0 pycrypto-2.0.1
Get: [pypm.activestate.com] fabric 0.9.0-1
Get: [pypm.activestate.com] pycrypto 2.0.1-1
Installing fabric-0.9.0
Fixing script C:\Users\sridharr\AppData\Roaming\Python\Scripts\fab-script.py
Installing pycrypto-2.0.1
2 голосов
/ 16 декабря 2009

Дайте этому readline попробовать. Это модуль для Windows, который позволяет использовать дополнительные функции IPython, которые не являются встроенными и могут работать с тем, что вы пытаетесь сделать.

1 голос
/ 16 июня 2010
  1. Загрузите и запустите установщик easy_install для вашей версии Python с http://pypi.python.org/pypi/setuptools#downloads. т.е.: setuptools-0.6c11.win32-py2.6.exe
  2. В командной строке lauch easy_install -U fabric для установки последней фабрики выпуска.
0 голосов
/ 16 декабря 2009

Readline должен быть доступен с Cygwin, если вы хотите переместить весь свой стек в этом направлении.

...