我在Ubuntu 16.04 LTS下。
我有两个蟒蛇装置。我实际上是通过pvpython使用它们的,但这可能与当前的问题无关。这些版本是:
apt-get中,驻留在系统dirs中。~/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit中,它只是从tar文件中展开。为了获得python提示符,我运行~/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit/bin/pvpython。我的意思是在第2版中使用版本1中的readline (因为它没有自己的,尽管它可能很奇怪)。为此,请执行以下操作:
readline在哪里:导入读行'/usr/lib/python2.7/lib-dynload/readline.x86_64-linux-gnu.so‘>>> readline.__file__ readline.__file__dir1中,它是sys.path的一个元素(我尝试了/home/santiago/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit/lib/python2.7和/home/santiago/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit/lib/python2.7/lib-dynload)。
2.1。获取.so文件。
$ cd dir1 $ ln -s -s
2.2。创建readline.py
$ nano readline.py
包含内容(根据ref above):
def __bootstrap():__bootstrap,__loader__,__file__ import sys,pkg_resources,imp __file__ = pkg_resources.resource_filename(__name__,'readline.x86_64-linux-gnu.so') __loader__ = None;del __bootstrap,__loader__ imp.load_dynamic(__name__,__file__) __bootstrap()现在,当我在~/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit/bin/pvpython中使用版本2时,我仍然会得到错误(这是我想要消除的)。
ImportError: No module named readline来自我~/.pythonrc中的一个~/.pythonrc。
如何将读行从版本1导入到版本2?
发布于 2018-03-09 14:40:28
我设法解决了这个问题。关键是链接到名称readline.so,而不是原始名称。其余的都无关紧要。
在“任择议定书”第2.1段:
$ cd ~/apps/ParaView-5.4.1-Qt5-OpenGL2-MPI-Linux-64bit/lib/python2.7/lib-dynload
$ ln -s /usr/lib/python2.7/lib-dynload/readline.x86_64-linux-gnu.so readline.so就是这样。事实证明,readline.py和__bootstrap (项目2.2)是不需要的。
https://stackoverflow.com/questions/49185598
复制相似问题