Ruby2.1.5和RubyPython 0.6.3 RubyPython::InvalidInterpreter:指定的解释器无效

2024-06-25 05:57:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在Debian8上使用RubyPython,但一直无法。RubyPython.start总是引发InvalidInterpreter异常。我尝试过指定python解释器的可执行文件,但这并不重要。下面的截图显示了我的版本,并尝试从pry启动它

rubypython (0.6.3)
adrew@bunny:~$ ruby --version
ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]
adrew@bunny:~$ python --version
Python 2.7.9
adrew@bunny:~$ which python2.7
/usr/bin/python2.7
adrew@bunny:~$ pry
[1] pry(main)> require 'rubypython'
=> true
[2] pry(main)> RubyPython.start
RubyPython::InvalidInterpreter: An invalid interpreter was specified.
from /var/lib/gems/2.1.0/gems/rubypython-0.6.3/lib/rubypython.rb:67:in `block in start'
[3] pry(main)> RubyPython.start(:python_exe => "/usr/bin/python2.7")
RubyPython::InvalidInterpreter: An invalid interpreter was specified.
from /var/lib/gems/2.1.0/gems/rubypython-0.6.3/lib/rubypython.rb:67:in `block in start'

Tags: ingemsbinmainversionlibusrstart
2条回答

RubyPython更新为0.6.4版本已经为我解决了这个问题。在

我运行strace -ff -o /tmp/pry.txt pry来查看输入require rubypython和{}时会发生什么。有一些线像

stat("/usr/lib/libpython2.7.so", 0x7ffd2bf4cde0) = -1 ENOENT (No such file or directory)

这意味着rubypython代码试图定位python库。缺少的是/usr/lib/x86_64-linux-gnu/libpython2.7.so文件的成功stat。在

我修改了文件~/.gem/ruby/2.1.0/gems/rubypython-0.6.3/lib/rubypython/翻译.rb在

^{pr2}$

最后一行是我插入的。在此之后,RubyPython.start返回{}。在

相关问题 更多 >