[IPython-dev] libreadline.so.5 missing in Canopy's IPython?
xaverm
zeitlinie at yahoo.de
Fri Feb 21 16:46:40 EST 2014
On 02/21/2014 07:07 PM, Prabhu Ramachandran wrote:
> On 2/21/14 11:05 PM, Name Name wrote:
>> I'm (partially) using IPython also out of Enthought's Canopy environment. Hopefully someone on this list is familiar with that.
>>
>> I just upgraded to version 1.3.0.1715 only to find that I could not invoke the simple 'non-notebook' IPython shell anymore without error because of a missing libreadline.so.5.
>>
>> I then realized, that indeed appdata/canopy-1.3.0.1715.rh5-x86_64/lib/ is lacking libreadline.so.5 completely(?)
>> Also I realized that strangely/luckily appdata/canopy-1.1.0.1371.rh5-x86_64/lib/ of the earlier version was not deleted during update(?)
>> Moreover the 'old' appdata/canopy-1.1.0.1371.rh5-x86_64/lib/ does contain libreadline.so.5
>>
>> After putting links to the 'old' libreadline.so.5 into the new appdata/canopy-1.3.0.1715.rh5-x86_64/lib/ the 'non-notebook' IPython shell starts again without error.
>>
>> Most likely all of this is not supposed to be. Does anyone have/had similar experiences? What am I missing here?
>
> Readline should have been installed in your user environment
> automatically after your upgrade so I am surprised it did not work for
> you. Do you have readline installed in your User environment? How are
> you launching IPython? You shouldn't have to touch your
> appdata/canopy-1.3.0.1715.rh5-x86_64/lib/ and you can probably remove
> the older appdata/canopy-1.1.0.1371.rh5-x86_64/lib/ as well. If you
> don't see readline in your environment, install it using enpkg readline.
Hi Prabhu,
by now I can get a little more specific:
a) I've grabbed a Linux machine 'virgin' with respect to Canopy
b) I've installed Canopy 1.3.0.1715 completely fresh
c) I've created an EPD-like environment
using ~/Canopy/canopy_cli setup ~/xxx/EPDenvironment
d) I've put ~/xxx/EPDenvironment/bin into my PATH
e) I run ipython
===================================
~>ipython
WARNING: Readline services not available or not loaded.
WARNING: The auto-indent feature requires the readline library
Python 2.7.6 | 64-bit | (default, Jan 29 2014, 17:35:36)
Type "copyright", "credits" or "license" for more information.
IPython 1.1.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/home/iami/xxx/EPDenvironment/lib/python2.7/site-packages/IPython/utils/py3compat.pyc
in execfile(fname, *where)
202 else:
203 filename = fname
--> 204 __builtin__.execfile(filename, *where)
/etc/pythonstart in <module>()
5 import atexit
6 import os
----> 7 import readline
8 import rlcompleter
9
ImportError: libreadline.so.5: cannot open shared object file: No such
file or directory
In [1]:
===================================
f) I did 'enpkg readline' as you suggested. No change.
B.t.w. 'enpkg readline' gets you readline.so at most,
but not libreadline.so.5
g) FINALLY: and that very much fits with my initial question:
I removed any libreadline.so versions from the 'virgin' linux box
*before* installing Canopy.
Now, after the preceding step g) I installed libreadline.so.5 into the
standard library directory of linux box's distribution, so nothing which
has anything to do with Canopy .... and, heureka, after that
======================================
~>ipython
Python 2.7.6 | 64-bit | (default, Jan 29 2014, 17:35:36)
Type "copyright", "credits" or "license" for more information.
IPython 1.1.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]:
=====================================
So, now I am very much inclined to claim that indeed libreadline.so.5 is
missing from Canopy 1.3.0.1715's /lib/ directories, and that it only
works because most users probably have libreadline.so.5 in their
$LD_LIBRARY_PATH anyway.
MXaver
More information about the IPython-dev
mailing list