Ipython недоступен readline и ошибка pip install readline - PullRequest
41 голосов
/ 08 июля 2011

Я установил ipython, но у него нет опции readline.Сначала я скачал gnu readline, скомпилировал и установил.Я не знаю, было ли это правильным решением, но это было первое, о чем я подумал.Это все еще не работает безрезультатно с той же ошибкой, что и раньше:

WARNING: Readline services not available on this platform.
WARNING: The auto-indent feature requires the readline library

Затем я попытался использовать readline pip install, и я получил ошибку ниже.Любая помощь будет оценена:

running install

running build

running build_ext

building 'readline' extension

creating build

creating build/temp.linux-x86_64-2.6

creating build/temp.linux-x86_64-2.6/Modules

creating build/temp.linux-x86_64-2.6/Modules/2.x

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DHAVE_RL_CALLBACK -DHAVE_RL_CATCH_SIGNAL -DHAVE_RL_COMPLETION_APPEND_CHARACTER -DHAVE_RL_COMPLETION_DISPLAY_MATCHES_HOOK -DHAVE_RL_COMPLETION_MATCHES -DHAVE_RL_COMPLETION_SUPPRESS_APPEND -DHAVE_RL_PRE_INPUT_HOOK -I. -I/home/jspender/include/python2.6 -c Modules/2.x/readline.c -o build/temp.linux-x86_64-2.6/Modules/2.x/readline.o -Wno-strict-prototypes

creating build/lib.linux-x86_64-2.6

gcc -pthread -shared build/temp.linux-x86_64-2.6/Modules/2.x/readline.o readline/libreadline.a readline/libhistory.a -L/home/jspender/lib -lncurses -lpython2.6 -o build/lib.linux-x86_64-2.6/readline.so

/usr/bin/ld: cannot find -lncurses

collect2: ld returned 1 exit status

error: command 'gcc' failed with exit status 1

----------------------------------------
Command /home/jspender/bin/python2.6 -c "import setuptools;__file__='/home/jspender/build/readline/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /tmp/pip-lBWIOm-record/install-record.txt failed with error code 1
Storing complete log in /home/jspender/.pip/pip.log

Ответы [ 3 ]

72 голосов
/ 04 января 2013

tmaric верно.У меня была такая же проблема при установке iPython (Ubuntu 12.10, Quantal, 32-bit).Мне не хватало dev-версии библиотеки ncurses5.Попробуйте:

sudo apt-get install libncurses5-dev

и затем снова установите модуль readline через pip

pip install readline
3 голосов
/ 08 июля 2011

У вас есть ошибка компоновщика: библиотека ncurses не установлена ​​или установлена, и компоновщик ищет неправильный объектный файл.

Какую платформу / операционную систему вы используете?

Если вы используете Linux / Unix, попробуйте:

locate libncurses

, чтобы увидеть, установлена ​​ли библиотека.Если в вашей системе нет файлов libncurses *. {O, итак, так. [0-9]. [0-9]}, просто установите библиотеку и readline.Если они есть, то проверьте, какой из них ищется в процессе компиляции readline, возможно, вам просто нужно сделать символическую ссылку, правильно назвав файл библиотеки.

2 голосов
/ 16 июня 2016

У меня была такая же проблема с моей установкой Ubuntu 14.04, когда я пытался установить некоторые библиотеки python. iPython, я полагаю, требует readline, который мне не удавался, пока я не выполнил следующие команды.

sudo apt-get install python-dev
sudo apt-get install libncurses5-dev
sudo pip install readline
...