1

Я пытаюсь установить GNU readline на CentOS 5, чтобы я мог использовать его с некоторыми модулями Python 2.7, в частности с модулем Cmd.

Я установил Python2.7 как отдельную библиотеку согласно этим инструкциям, но безрезультатно. Насколько я понимаю, обновление Python, поставляемого с образом AWS CentOS, ломает несколько общих библиотек, включая yum, поэтому он компилируется и устанавливается отдельно, однако даже после прохождения этого процесса я все еще получаю:

ImportError: No module named readline

2 ответа2

1

Учитывая инструкции, которым вы следовали, вот несколько дополнительных шагов, которые мне пришлось предпринять, чтобы установить readline, чтобы python2.7 мог использовать его:

cd /usr/lib
ln -s libncurses.so.5 libncurses.so
easy_install readline

Для установки readline требуется, чтобы ld использовал -lncurses , что означает, что в пути к вашей библиотеке должен быть найден "libncurses.so" (не только libncurses.so.5). Вам может понадобиться аналогичная символическая ссылка в /usr/lib64 если у вас установлена 64-битная ОС.

1

Зависимости, которые вы хотите использовать с python, должны быть установлены перед сборкой python, иначе модули не будут собраны и установлены (если вам нужна другая программа для тестирования readline, я думаю, что fbreader это нужно - не-java версия) Вывод configure должен дать вам некоторое представление.

как только вы это сделаете, это то, что говорит файл установки

GNU readline. В отличие от предыдущих воплощений Python, GNU readline теперь включена в дополнительный модуль, настроенный в файле установки вместо переключателя сценариев настройки. Возможно, вам придется вставить параметр -L, указывающий на каталог, в котором находится libreadline. *, И вам, возможно, придется изменить -ltermcap на -ltermlib или, возможно, удалить его, в зависимости от вашей системы - см. Инструкции GNU readline. Это нормально и для общей библиотеки.

readline readline.c -lreadline -ltermcap

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .